FIFO (اف‌آی‌اف‌او)

First In, First Out یا به اختصار FIFO مکانیسمی در مدیریت داده‌ها بر اساس ترتیب زمانی است که از آن طریق ریکوئست‌های مرتبط با دیتا استراکچرهای Queue و Stack مدیریت می‌شوند بدین صورت که اولین درخواستی ارسالی اول از همه هندل خواهد شد (نقطهٔ مقابل FIFO رویکرد Last In, First Out یا به اختصار LIFO است بدین شکل که جدیدترین درخواست‌ها اول از همه هندل خواهند شد.)

برای درک بهتر این موضوع، می‌توان قرار گرفتن خودروها پشت چراغ راهنمایی را مد نظر قرار داد بدین صورت که اولین خودرویی که پشت چراغ قرار می‌گیرد همواره پس از سبز شدن چراغ اول از همه از صف خارج خواهد شد و شروع به حرکت خواهد کرد (در چنین موقعیتی سَر صف اصطلاحاً Head و ته صف Tail نامیده می‌شود.)

چنانچه بخواهیم مثالی در برنامه‌نویسی بزنیم، می‌توانیم آرایهٔ زیر را در زبان پی‌اچ‌پی مد نظر قرار دهیم که بر اساس قانون FIFO اولین اِلِمان قرار گرفته در آن اول از همه از صف خارج خواهد شد:

<?php 
$arr = [0, 1, 2, 3, 4, 5, 6, 7];
echo array_shift($arr); // returns 0

در صورت اجرای اسکریپت فوق، خواهیم دید که عدد صفر ریترن می‌شود زیرا از آنجا که این اِلِمان اول از همه در آرایه ذخیره شده است، با استفاده از فانکشن ()array_shift زبان پی‌اچ‌پی، که مبتنی بر مکانسیم FIFO است، اول از همه از صف خارج شده و نمایش داده خواهد شد.

online-support-icon