TVar hoạt động như thế nào? Từ những gì tôi đã đọc nó cố gắng để chạy tất cả các giao dịch ngay lập tức khi nhận được chúng, tuy nhiên, một giao dịch hoàn thành vô hiệu hóa các giao dịch hiện đang chạy khác, mà sau đó phải khởi động lại. Đây có phải là cách TVar hoạt động không?Haskell: TVar hoạt động như thế nào?
Nếu đây là trường hợp, nếu có giao dịch 1ms giao dịch dài xảy ra sau mỗi 100ms, điều đó có nghĩa là giao dịch mất 200ms để xử lý sẽ không bao giờ hoàn thành?
[Liên kết tới nhiều bài báo và bản trình bày STM khác nhau, bao gồm bài báo và bài thuyết trình STM, bao gồm cả http://reearch.microsoft.com/en-us/um/people/simonpj/papers/stm/index.htm). – hammar