fixing that felt good. the preceding 24 hours, not so much.
Data races are particularly nasty because any print statements or debug tracing can trigger a memory fence/reorder and make the problem disappear.
Nothing more frustrating then adding a printf only to see the issue no longer manifest.
Some problems are worth the time to solve them.
However, for example, on the average desktop or mobile app, it's not clear to me(yet!) it is worth the pain of writing in rust.