פונקציות, תהליכונים (Threads) וביצוע אסינכרוני ב-JavaScript

עליך להבין איך JavaScript עובדת "מתחת למכסה המנוע".

להלן פירוט של פונקציות, תהליכים (processes), תהליכונים (threads) וסגנונות ביצוע.

סוגי פונקציות ב-JavaScript

תהליך (Process) מול תהליכון (Thread)

תהליך (Process) הוא תוכנית שרצה על המחשב שלך.

תהליכון (Thread) הוא יחידה קטנה בתוך תהליך.

סינכרוני מול אסינכרוני

JavaScript היא single-threaded. היא מטפלת במשימה אחת בכל פעם באמצעות Call Stack.

ביצוע סינכרוני (Synchronous Execution):

ביצוע אסינכרוני (Asynchronous Execution):

איך אסינכרוניות עובדת:

  1. JavaScript שולחת משימה (כמו טיימר) ל-Web API.
  2. הקוד הראשי ממשיך לרוץ.
  3. ברגע שהמשימה מסתיימת, היא עוברת ל-Callback Queue.
  4. ה-Event Loop מעביר אותה ל-Call Stack כאשר המחסנית ריקה.

זה שומר על אפליקציות האינטרנט שלך מהירות וקשובות (responsive).

Source: https://dev.to/kamalesh_ar_6252544786997/types-of-function-and-threads-process-and-synchronous-vs-asynchronous-in-javascript-1hhd