PDA

View Full Version : حرفه ای: توقف اجرای کامل سرور در هنگام استفاده از سیستم فایل و usleep



sattaryekta
سه شنبه 24 اسفند 1389, 14:15 عصر
سلام
یک موردی پیش اومده:
اگر در یک فایل php، یک فایل را باز کنی و با استفاده از sleep ، فایل را باز نگه دارید
تا موقعی که فایل را نیبندید ، فایل های php دیگر که در اونها از session استفاده شده اجرا نخواهند شد.
به محض اینکه اسکریپت اول فایل را بست، و کارش تموم شد بقیه اسکریپت ها شروع به اجرا میکنند.

مثال:
مثلا در فایل a اسکریپت زیر را قرار میدهیم:


$f = fopen($filename,"r");
while(true){
sleep(1);
}
fclose($f);

و در فایل b:


session_start();
//...

اسکریپت فایل b تا زمانی که اسکریپت فایل a در حال اجراست اجرا نخواهد شد
ولی زمانی که session_start را از توش برداریم، هردو اسکریپت a و b همزمان اجرا خواهند شد
اگر کسی به چنین مشکلی برخورد کرده، راه حلی داره؟ تنظیمات خاصی داره؟