this issue exists as a bookmark that there might be improvements over using an `Arc<Mutex>`, such as possibly something from crossbeam