#clock #async-runtime #run-time #thread-local #shutdown #arsenal

nightly app doomsday-clock

Async runtime shutdown safety test. Handle with care

9 releases (5 breaking)

0.8.0 Jan 3, 2023
0.7.0 Jan 3, 2023
0.6.0 Dec 15, 2022
0.5.1 Dec 12, 2022
0.0.2 Nov 28, 2022

#1538 in Asynchronous

44 downloads per month

MIT license

29KB
498 lines

Doomsday Clock

The validity of async-local is predicated upon the guarantee that for a given runtime to be supported, shutdown sequencing ensures no tasks be dropped by thread local destructors. So long as this is the case, async-local can synchronize runtime thread drops in a way that guarantees LocalRef and RefGuard never outlive the Context for which they point to. Doomsday Clock is an async runtime shutdown test specifically designed to panic should shutdown not be sequenced in a way that will avoid dangling references using the techniques outlined within async-local.

Dependencies

~3–41MB
~579K SLoC