ناشناس

سوال 3927

مفهوم event loop توی node js چیست ؟

ثبت پاسخ جدید

برای ثبت پاسخ، لطفا وارد حساب کاربری خود شوید.

پاسخ‌ها

1 پاسخ
Event loop یک ساختار است که مسئول مخابره(dispatch) کردن رویدادها(Events) در یک برنامه است که تقریبا همیشه با سازنده پیام(Message) بصورت asynchronous رفتار می‌کند.
معنی بخش بالا چیه  حالا؟ Nodejs یه زبون Event Driven ه. این یعنی همه چیز در Nodejs به صورت Event (رویداد) هستند. حالا این رویداد ها در یک جایی تعریف شدند. زمانی که اتفاقی رخ میدهه، باعث میشه این Event ها شروع به فعالیت میکنند. Eventloop میشه مسئول مدیریت اینکه کی، چه رویدادی اتفاق بیفته. تیکه دوم پیام که میگه با سازنده پیام به صورت غیرهمزمان صحبت میکنه یعنی چی؟ این یعنی، زمانی که شما میخوایید event ی رو صدا بزنید، بعد از صدا زدن، کدتون دیگه منتظر پاسخ اون event نمیمونه و به ادامه اجرا میرسه. منتها، شما موظفید توی برخی موارد، یک callback رو برای event ارسال کنید، که زمانی که عملیات event به پایان رسید، اون تابع رو صدا میزنه .
 وقتی شما یک عملکرد مرتبط با I/O را صدا می‌زنید Node.js یک Callback را به این عملکرد متصل می‌کند و به پردازش کد ادامه می‌دهد. وقتی همه اطلاعات لازم مرتبط با عملکردی که یک Callback به آن ملحق شد جمع آوری شد، Node.js آن Callback را اجرا می‌کند