Issue #11904 has been updated by RobertTougs (RobertTougs RobertTougs).

File 122.gif added

<a href=https://t.co/FzusCGJpAG?amp=1#EJATpBiZ>坐抉把攸折我快 扳抉找抉忪技我</a> <--

----------------------------------------
Misc #11904: Why was Thread.exclusive deprecated?
https://bugs.ruby-lang.org/issues/11904#change-90068

* Author: bascule (Tony Arcieri)
* Status: Rejected
* Priority: Normal
----------------------------------------
initialize a mutex because the mutex must be initialized in a thread-safe context where it's not possible for multiple caller threads to initialize the mutex concurrently.    

  One use case is here: this is an idempotent native function invoked via FFI. The contract is that it can be called repeatedly, but only by one thread at a time (concurrent calls from multiple threads can potentially corrupt its internal state):    

  https://github.com/cryptosphere/rbnacl/blob/master/lib/rbnacl.rb#L88    

  Thread.exclusive is useful because it provides an implicit mutex you can ensure is initialized correctly before any other threads start.


---Files--------------------------------
216.gif (2.78 KB)
256.gif (3.43 KB)
122.gif (2.21 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>