proto.lib

Lost Wakeup trên Condition Variable

Nếu waiter kiểm tra predicate rồi mới gọi wait() mà không giữ lock xuyên suốt, signaller có thể chen vào giữa hai bước đó: đổi trạng thái và signal trước khi waiter kịp block — tín hiệu bị mất và waiter ngủ vĩnh viễn. Vì vậy predicate phải được kiểm tra khi đang GIỮ lock, và wait() phải nằm trong một vòng lặp.

ConcurrencyTrung bình2026-08-25
Lost Wakeup trên Condition Variable

Mở rộng

Animation gốc là một file HTML tự chứa, có thể nhúng lại ở bất kỳ trang nào khác. Mở file gốc

Liên quan