* Mutex * added method: * added Mutex#owned? which returns the mutex is held by current thread or not. [experimental] * incompatible changes: * Mutex#lock, Mutex#unlock, Mutex#try_lock, Mutex#synchronize and Mutex#sleep are no longer allowed to be used from trap handler and raise a ThreadError in such case. * Mutex#sleep may spurious wakeup. Check after wakeup.
- 追加されたメソッド
- Mutex#owned?
現在のスレッドによって開かれたミューテックスを返す。または何も返さない。
pry(main)> mutex = Mutex.new => #<Mutex:0x007fe47c1a97b8> pry(main)> mutex.owned? => false
よくわからん。
- 後方互換のない変更
- Mutex#lock
- Mutex#unlock
- Mutex#try_lock
- Mutex#synchronize
- Mutex#sleep
これらのメソッドはトラップハンドラーやスレッドエラーの際に利用されることがなくなった。
-
- Mutex#sleep
wakeup確認後に間違ってwakeupするかもしれない。