Bạn cần phân biệt giữa một đơn vị công việc (Nhiệm vụ) từ quá trình cơ bản được sử dụng để lưu trữ/thực thi chúng. Nó thậm chí không cần thiết cho các nhiệm vụ để chạy trên các chủ đề khác. Ví dụ, các nhiệm vụ có thể được thực hiện trong một ứng dụng đơn luồng mà định kỳ mang lại sự kiểm soát cho nhóm tác vụ.
Ngay cả khi Tác vụ được thực thi trên các chuỗi riêng biệt, thường không có mối quan hệ 1-1 giữa Task và Thread. Các chủ đề được preallocated như là một phần của một hồ bơi, và sau đó nhiệm vụ được lên kế hoạch để chạy trên các chủ đề có sẵn. Tạo một nhiệm vụ mới không yêu cầu phí tạo luồng, nó chỉ đòi hỏi chi phí của một enque trong một hàng đợi nhiệm vụ.
Điều này làm cho các tác vụ vốn có khả năng mở rộng hơn. Tôi có thể có hàng triệu tác vụ trong suốt thời gian tồn tại của ứng dụng, nhưng chỉ thực sự sử dụng một số chuỗi liên tục.
Nguồn
2013-06-14 14:46:38
Trùng lặp - http://stackoverflow.com/questions/4130194/what-is-the-difference-between-task-and-thread – EkoostikMartin