OK, tôi đã cân nhắc điều này ngày hôm nay, và tôi đã đến để hỏi ý kiến hoàn toàn chủ quan và thiên vị về nó. Nghịch lý thay, mặc dù vậy, tôi cũng không nghĩ đó là thức ăn gia súc chiến tranh. Tôi nghĩ rằng có chỗ cho cuộc trò chuyện hoàn toàn văn minh - Đó là Vim vs Emacs.
Tôi đã sử dụng rất nhiều trừu tượng đồng thời, đặc biệt là các khái niệm được xây dựng trên đầu các luồng. Có một xu hướng lớn trong số đó, cho dù đó là truyền tin nhắn, không thay đổi theo mặc định hoặc theo luồng theo mặc định hoặc các luồng khác.
Xu hướng là tất cả họ đều đảo ngược ý tưởng của các chủ đề bằng cách chia sẻ dữ liệu rõ ràng hơn là ẩn. Đó là, tất cả dữ liệu không được chia sẻ trừ khi có quy định khác, điều này trái ngược với phân luồng truyền thống được tìm thấy trong các ngôn ngữ như Java. (Tôi biết Java hỗ trợ trừu tượng đồng thời ở mức cao hơn của riêng nó.) Ví dụ: bạn rõ ràng chuyển các thông báo. Bạn nói rõ các biến nào là luồng cục bộ. Bạn nói rõ ràng các biến có thể thay đổi. Đây chỉ là một vài ví dụ được tìm thấy trong một số ngôn ngữ.
Tôi nghĩ phong cách đồng thời dễ dàng này là một khái niệm hiện đại. Tôi đã lầm. Gần đây tôi đã bắt đầu chơi xung quanh với các đồ chơi UNIX như fork () và pipe () và tôi đã bị sốc khi phát hiện ra rằng các cơ chế đồng thời rõ ràng, dễ dàng đã xuất hiện kể từ khi bắt đầu UNIX.
Có một chút gì đó lạ về nhận ra rằng C + UNIX từ những năm 70 làm đồng thời xa dễ dàng hơn nhiều cơ chế hợp thời trang ren hiện đại.
Vì vậy, đây là những gì tôi đang tự hỏi ... những trừu tượng luồng hiện đại này chỉ đơn giản là cố gắng mô phỏng các quy trình kiểu UNIX trên đầu các luồng, với tất cả các đặc điểm thám hiểm và không chia sẻ mặc định của chúng? Tôi biết rằng một số cơ chế như STM cung cấp những thứ như giao dịch kiểu DB thực sự là một giải pháp hiện đại và sáng tạo để đồng thời, nhưng hầu hết dường như là những cách mới để thực hiện những gì các lập trình viên UNIX đã làm từ lâu.
Chỉ cần nói rằng, tôi không phải là một fanboy UNIX, không phải là bất kỳ sự tưởng tượng nào. Tôi biết rằng các quy trình chậm hơn nhiều so với các luồng để khởi tạo trên nhiều nền tảng, nhưng tôi đang nói về điều này từ cơ sở khái niệm.