Появился незапирающийся RwLock — продолжение незапирающихся мьютексов

23.08.2025

Реализована фича nonpoison_rwlock: появился RwLock, который не помечается отравленным после паники. Это продолжение работы над незапирающимися блокировками, начатой месяцем ранее.

Зачем

Та же мотивация, что и у незапирающихся мьютексов: отравление блокировки после паники — правильное поведение, если паника могла оставить данные в промежуточном состоянии, но наказание за чужую ошибку, когда состояние гарантированно целое. Поскольку модуль nonpoison::mutex уже опубликован, логично довести дело до конца и для блокировок чтения-записи.

Заодно переработан существующий poison::rwlock: изменения перенесены так, чтобы оба варианта читались одинаково. Фича нестабильна, автор — Connor Ostrander.

Оригинал

Implementation: #[feature(nonpoison_rwlock)]

Упоминаний: 1 · Просмотров: 3