Очередь многопроцессорной обработки Python: ставить независимо от получения? - PullRequest
2 голосов
/ 16 февраля 2010

Является ли putting объектом в очереди многопроцессорной обработки независимо от getting объектом из него?

Другими словами, будет ли putting объект блокировать процесс P1 , если другой процесс P2 будет getting от него?

Обновление: Я предполагаю бесконечную очередь.

1 Ответ

2 голосов
/ 16 февраля 2010

Мое чтение исходного кода таково, что get получает блокировку чтения, которая не зависит от блокировки (называемой _notempty), полученной put. Если я правильно понимаю, одновременные get s могут блокировать друг друга, а одновременные put s могут блокировать друг друга (по модулю использования вами параметра block), но при получении и установке не блокируется взаимно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...