Skip to main content

Module sync

Module sync 

Source
Expand description

Poison-tolerant locking shared by every crate.

A mutex is poisoned when a thread panics while holding it. Scene callbacks run outside these locks and worker panics are caught at thread boundaries and reported as errors, so a poisoned lock never means the process must stop. Every state guarded by a library mutex is plain data that stays valid at each statement (caches, mailboxes, counters and progress), so these helpers continue with the guarded value instead of propagating the poison as a second panic. The font engine’s lock is the exception: it guards third-party shaping state, so a poisoned engine is reported as a validation error.

Traits§

CondvarExt
Waits on a Condvar and continues when the mutex was poisoned meanwhile.
MutexExt
Locks a Mutex and continues with its value when a previous holder panicked.