Tại sao chúng ta cần Mutex và Sự kiện trong Windows? Trong ý nghĩa không thể có cửa sổ chỉ Mutex? Điều gì có thể được thực hiện với các sự kiện không thể thực hiện với Mutex?Mutex và Sự kiện trên Windows
Trả lời
Sự kiện cho phép chuỗi chặn cho đến khi một số sự kiện (do đó tên) được phát sóng. Chặn trên một sự kiện có nghĩa là "Đánh thức tôi khi có điều gì đó xảy ra"; bạn mong đợi được ngủ. Sự kiện là một cơ chế báo hiệu và cung cấp hỗ trợ cho điều này không tìm thấy trên mutexes, chẳng hạn như tự động có thể xóa tín hiệu ngay sau khi ai đó chờ nó được đánh thức. Ngoài ra, API cho phép chặn cho đến khi một trong số hoặc tất cả một số sự kiện được báo hiệu.
Mutex (Mutual Exclusion), mặt khác, là một cơ chế phối hợp phạm vi cho các tài nguyên được chia sẻ. Hãy suy nghĩ giao dịch. Bạn không mong đợi để chờ đợi nhưng muốn truy cập một số tài nguyên được chia sẻ và chỉ trong trường hợp những người khác đang truy cập vào tài nguyên đó, bạn đang chặn.
Nếu bạn cố gắng mô phỏng Sự kiện bằng cách sử dụng mutex, bạn sẽ gặp phải sự cố ngay khi bạn mua khóa (khi có nghĩa là "sự kiện được báo hiệu"), bạn sẽ giữ mọi thứ khác cho đến khi bạn phát hành Khóa. Đó không phải là ngữ nghĩa của việc báo hiệu một sự kiện; nó có thể vẫn được đăng và "cổng" sẽ được mở cho mọi thử nghiệm luồng cho sự kiện, mà không có bất kỳ khóa nào.
Mutex dành riêng cho đồng bộ hóa interprocess. Đây là đối tượng chế độ lõi. Sự kiện đồng bộ hóa đa luồng trong một quy trình. Đây là đối tượng chế độ người dùng.
Đối tượng Mutex rất chung chung và nặng, mặt khác đối tượng sự kiện có nhiều ánh sáng hơn. Trong hầu hết các trường hợp, bạn phải sử dụng đồng bộ hóa chế độ người dùng, vì nó cung cấp ít chu kỳ CPU hơn.
Opps (nhỡ ... – yozhik
- 1. Mutex vs tổ chức sự kiện trong Windows
- 2. Sự kiện Windows Multitouch và LabView
- 3. Trình xem sự kiện Windows và log4net
- 4. Tăng cường triển khai Mutex cho Windows
- 5. Mutex và semaphore thực sự làm gì?
- 6. Windows Sự kiện triển khai trong Linux bằng các biến có điều kiện?
- 7. Đọc Sự kiện Nhật ký Sự kiện Windows Cụ thể
- 8. Chi phí của mutex, phần quan trọng vv trên Windows
- 9. Tiêu thụ sự kiện "Truy tìm sự kiện cho Windows"
- 10. Giám sát sự kiện hiển thị nguồn trên Windows XP
- 11. Xử lý sự kiện CTRL + C trong Node.js trên Windows
- 12. Sự kiện tăng tốc Windows Phone 8
- 13. Whats là sự khác biệt giữa AutoResetEvent và Mutex
- 14. Tên mutex giống nhau cho dịch vụ Windows và exe trong Windows 7
- 15. Sự khác nhau giữa "mutex" và "lock" là gì?
- 16. Sự khác biệt giữa Tải sự kiện, Kích hoạt sự kiện và Nhập sự kiện trong Biểu mẫu
- 17. sự kiện và luồng
- 18. Sự kiện đồng thời dựa trên sự kiện là gì?
- 19. Ractive.js preventDefault sự kiện trên proxy kiện
- 20. Sự kiện Java và trình nghe sự kiện
- 21. Ngăn sự kiện nhấp chuột sau sự kiện được tổ chức và sự kiện mouseup
- 22. Sự khác biệt giữa MBCS và UTF-8 trên Windows
- 23. Sự khác biệt giữa Ping trên Windows và Ubuntu
- 24. Dịch vụ Sự kiện Thông báo Hệ thống Windows & Sự kiện Tùy chỉnh
- 25. Sự kiện cuộn Choppy/Laggy trên Chrome và IE
- 26. Kích hoạt sự kiện trên `click` và` enter`
- 27. sự kiện backbone.js và el
- 28. Có thể khởi tạo tĩnh các mutex trong Windows không?
- 29. Phụ kiện Android dựa trên phần mềm trên Windows
- 30. Sự kiện chạm Javascript chậm trên Android
"là cơ chế phối hợp phạm vi cho các tài nguyên được chia sẻ. Hãy suy nghĩ giao dịch" ... bạn đã viết [this] (http://www.differencebetween.net/miscellaneous/difference-between-mutex-and-event/) là tốt? –