Câu hỏi phỏng vấn Node.js
Câu hỏi

Sự khác biệt giữa `process.nextT...

Câu trả lời

Trong Node.js, process.nextTick()setImmediate() đều là các hàm được sử dụng để lên lịch thực thi mã JavaScript một cách bất đồng bộ. Tuy nhiên, chúng có sự khác biệt về thời điểm thực thi trong vòng lặp sự kiện (event loop).

  1. process.nextTick():
  • Hàm process.nextTick() lên lịch một callback để được thực thi ngay sau khi hoàn thành pha hiện tại của vòng lặp sự kiện, trước khi bất kỳ I/O hoặc timer nào khác được thực thi.
  • Callback được thêm vào hàng đợi "next tick", được xử lý ngay sau khi hoàn thành hoạt động hiện tại và trước khi vòng lặp sự kiện tiếp tục sang pha tiếp theo.
  • Sử dụng process.nextTick() có thể gây ra I/O starvation nếu callback được gọi một cách đệ quy, vì nó sẽ ngăn vòng lặp sự kiện tiếp tục sang các pha khác và xử lý các tác vụ I/O.
  1. setImmediate():
  • Hàm setImmediate() lên lịch một ca...
expert

expert

Gợi ý câu hỏi phỏng vấn

expert

Node.js thực sự tạo ra bao nhiêu luồng?

senior

Làm thế nào bạn có thể có một biến toàn cục giữa tất cả các worker được clustered trong Node.js?

middle

Tại sao chúng ta luôn sử dụng require các module ở đầu một file trong Nodejs?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào