چهار نکته درباره متد destruct__

خرید بک لینک
امروز داشتم شرایط مختلف کالبک OnDestroy جاوا رو تست می کردم(این کالبک زمانی که برنامه قراره کلاً بسته و نابود بشه اجرا میشه) یاد PHP افتادم... lol

اینکه در PHP متدی بنام destruct__ هست (با این نامگذاریشون!) برای زمانی که کلاس قراره بکارش خاتمه بده (و یا اسکریپت متوقف بشه؟) صدا زده میشه
اما به کد PHP زیر نگاه کنید:

کد PHP:

<?phpclass MyClass
{
function
__destruct()
{
error_log("test message", "./test.txt");
retu;
}
};
$objMyClass = new MyClass();

while (

1)
{

}


1- اون متد(یا کالبک؟) لعنتی PHP، حتی زمانی که وب سرور رو متوقف کنید باز هم صدا زده نمیشه!
2- اون متد(یا کالبک؟) لعنتی PHP، حتی زمانی که مرورگر رو متوقف کنید باز هم صدا زده نمیشه!
3- نهایتاً اون متد(یا کالبک؟) لعنتی PHP، حتی زمانی که اسکریپت FATAL ERROR بده، باز هم صدا زده نمیشه! خخخخخخ
Fatal error: Maximum execution time of 30 seconds exceeded in C:WWWrootindex.php on line 15
(در صورتی که این نوع error کلاً پردازش اسکریپت رو متوقف می کنه)

وایــی * 2
[تصویر: 4x_facepalm.png]

پس میتونیم بگیم اون دسته از برنامه نویسایی که متغیرها و اشیاء داخل کلاس رو داخل این متد مثلاً تخلیه و null می کردند(از جمله خودم)، اگر توی همچین شرایطی قرار بگیرن هیچ کاری انجام ندادن که هیچ، memory leak هم انجام دادن... ؟

بنابراین صراحتاً اعلام می کنم که این متد(یا کالبک!!) مفت گرونه، بدرد هیچی نمی خوره و مکان مناسبی هم برای بستن اتصالات نیست Sleepy
بدرد این میخوره که پیازهای گاز زده رو بریزید توش
Personal Home Page Big Grin

شهید محمد علی رجایی: مردم ما از کمبود ها و کسریها گله ندارند، آنچه مردم را می آزارد و صدایشان را در می آورد وجود تبعیضات ناروا و سوء استفاده از بیت المال است!

php مرکز کد های سایت...

ما را در سایت php مرکز کد های سایت دنبال می‌کنید

برچسب: نویسنده: استخدام کار بازدید: 172 تاريخ: چهارشنبه 1 ارديبهشت 1395 ساعت: 18:16

صفحه بندی