Hầu như luôn luôn đơn giản hơn để suy nghĩ tuần tự, và sau đó sửa đổi logic đó để hoạt động tốt hơn bằng cách sử dụng các luồng. Và, như cách diễn đạt, "Nếu nó không bị hỏng, đừng sửa nó." Hầu hết các lập trình viên không sử dụng các chủ đề đơn giản vì không cần sử dụng chúng.
Nếu bạn cảm thấy thoải mái hơn khi sử dụng chúng, sẽ tiếp thêm sức mạnh cho bạn. Tuy nhiên, hãy biết rằng nếu các luồng không cung cấp tăng tốc bằng cách loại bỏ các tắc nghẽn, chúng gần như chắc chắn làm chậm chương trình của bạn.
Cũng xem xét rằng các hệ thống chỉ dành một CPU cho một quy trình sẽ mô phỏng nhiều luồng bằng một luồng duy nhất để tiết kiệm tài nguyên (điều này không xảy ra thường xuyên với các máy tính hiện đại, mặc dù các ứng dụng điện thoại thông minh vẫn bị lạm dụng rất nhiều). Trong trường hợp này, ngay cả khi bạn loại bỏ các tắc nghẽn thông qua việc sử dụng các luồng, nó thực sự sẽ chậm hơn so với khi bạn không sử dụng các luồng.
Và, có lẽ là lý do tinh tế nhất để sử dụng thận trọng để sử dụng các chủ đề, nhưng chắc chắn không phải là ít quan trọng nhất, các chủ đề có xu hướng làm những gì bạn không mong đợi. Có, nếu bạn đang thực hiện các biện pháp phòng ngừa, bạn sẽ ổn thôi. Có, nếu chủ đề của bạn không ghi vào các biến được chia sẻ giữa các chủ đề, bạn sẽ ổn thôi. Điều đó nói rằng, các lỗi liên quan đến chủ đề rất khó tìm. Vì tôi cho rằng một lập trình viên không thể loại bỏ hoàn toàn khả năng tạo ra các lỗi trong mã và do đó, một lập trình viên nên có biện pháp bảo vệ chống lại các lỗi có thể xảy ra thay vì tập trung vào việc loại bỏ hoàn toàn chúng, bạn chắc chắn nên áp dụng ý tưởng này vào khó khăn để tìm lỗi chủ đề là tốt. Nói cách khác, hãy biết rằng bất chấp những nỗ lực hết sức của bạn,
Vì vậy, bạn nên sử dụng chủ đề nào? Vâng, một kiến thức lành mạnh về các chủ đề chắc chắn không phải là một điều xấu, đặc biệt là nếu bạn trở nên giỏi về nó. Tuy nhiên, sự chuyển động muộn đã hướng đến các ngôn ngữ đơn luồng như node.js. Một trong những lợi thế chính của việc có một luồng duy nhất là dễ dàng mở rộng quy mô và một số tối ưu hóa nhất định có thể được thực hiện nếu bạn biết rằng các hướng dẫn dự kiến sẽ được chạy tuần tự (ngay cả khi tối ưu hóa có thể có nghĩa là các lệnh có thể chạy song song được chạy không đồng bộ).
Điều đó nói rằng, tôi nói làm những gì thoải mái nhất cho bạn. Theo kinh nghiệm của tôi, viết một chương trình mà bạn hiểu có mức độ ưu tiên cao hơn là làm cho nó hoạt động nhanh hơn. Chỉ cần chắc chắn sử dụng các luồng khi bạn nghĩ rằng nó giúp bạn viết chương trình, và không phải vì bạn muốn nó hoạt động nhanh hơn, vì bạn không nên lo lắng quá nhiều về hiệu suất khi bạn đang viết chương trình (tối ưu hóa là quan trọng, nhưng nó cũng có thể chờ).