Revive test_busy_handler_outwait and synchronize threads to remove "sleep 1".
I revived test_busy_handler_outwait because I think that this test covers a good use case regarding busy_handler.
Ruby 1.9 and later does not allow a thread to unlock a Mutex locked by another thread, so I used Queue to synchronize the main thread and another thread.
I also refined other test methods to remove sleep 1, which was used to synchronize threads.
I hope this pull request improves this project, but please feel free to ignore it if it is not so useful.
Regards, Murase
Speeding up the test suite is a nice feature. I've been running the whole suite locally a lot lately, and these tests are very noticeable.
I've rebased this onto current main
MacOS failures are unrelated, merging. @masamitsu-murase Thank you!