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

middle

Bạn sẽ sử dụng thư viện assert của Node.js so với các thư viện assert khác như chai không? Tại sao?

middle

Bạn sẽ sử dụng module cluster trong Node.js khi nào?

expert

Mục đích của việc sử dụng hidden classes trong V8 là gì?

Bình luận

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

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