From: sesyug@... Date: 2021-03-03T21:05:03+00:00 Subject: [ruby-core:102730] [Ruby master Misc#11904] Why was Thread.exclusive deprecated? Issue #11904 has been updated by sesyugwg (sesyugwg sesyugwg). ������ ���������� ������ �������������� �������������� ���������������� ������������������ ������������������-�������������������������������������� ������������������. ������������������ ���� ���������������������� ���������� �������������������� ���������������� https://������-����.���� . ���� ������������ �������������� �������������� ����������������, �������� ������ ���� ���������������������� ���������������� ������������������ �� ������������������ �������� ������������. �������������������� ������������ �������������������� ������������������ �������������������� ���������������������������������� . ������������������ ���� ���������������������� ���������� ������ https://������-����.���� . ---------------------------------------- Misc #11904: Why was Thread.exclusive deprecated? https://bugs.ruby-lang.org/issues/11904#change-90728 * 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. -- https://bugs.ruby-lang.org/ Unsubscribe: