Các Hàm, Luồng và Thực thi Bất đồng bộ trong JavaScript

Bạn cần hiểu cách thức hoạt động bên dưới của JavaScript.

Dưới đây là phân tích chi tiết về các hàm, tiến trình, luồng và các kiểu thực thi.

Các loại Hàm JavaScript

Tiến trình (Process) so với Luồng (Thread)

Một Tiến trình (Process) là một chương trình đang chạy trên máy tính của bạn.

Một Luồng (Thread) là một đơn vị nhỏ bên trong một tiến trình.

Đồng bộ (Synchronous) so với Bất đồng bộ (Asynchronous)

JavaScript là đơn luồng (single-threaded). Nó xử lý từng tác vụ một bằng cách sử dụng một call stack.

Thực thi Đồng bộ (Synchronous Execution):

Thực thi Bất đồng bộ (Asynchronous Execution):

Cách thức hoạt động của Bất đồng bộ:

  1. JavaScript gửi một tác vụ (như bộ hẹn giờ) đến Web API.
  2. Mã chính tiếp tục chạy.
  3. Khi tác vụ hoàn thành, nó sẽ được chuyển đến Callback Queue.
  4. Event Loop sẽ chuyển nó vào Call Stack khi stack trống.

Điều này giúp các ứng dụng web của bạn luôn nhanh và phản hồi tốt.

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