Rust doesn't have a scheduler.
The issue is the false assumption, that the remove operation can safely be done without taking a lock. This can be done in some specific data structures using atomic operations, but here the solution was to just take the lock. The same thing could have happened in a C code base but without the unsafe block indicating where to look for the bug.
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments