Re[6]: Гарантированы ли ложные пробуждения?
От: σ  
Дата: 20.07.19 20:03
Оценка: 12 (1)
M>>>Суть моего предыдущего поста была в том, что wait()/notify() изначально рассчитаны на такие сценарии, поэтому все это учитывают и работают, как заявлено.
σ>>Нет, не работают. Автор книги подтвердил, что в ней это баг.

M>А вот тут хочу подробнее. Ты утверждаешь, что если пойти на wait() в одном потоке, затем этот поток временно остановится, а другой добавит данные в очередь и сделает notify(), то после этого второй поток проснувшись уйдет в ожидание, оставив необработанными только что добавленные данные?


Да. https://stackoverflow.com/questions/17984552/fine-grained-locking-queue-in-c
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.