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

senior

Trong Nodejs, các luồng worker khác gì với cluster?

senior

Có thể sử dụng Class trong Node.js không? Cho ví dụ?

expert

Node.js có thể sử dụng các engine khác ngoài V8 không?

Bình luận

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

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