From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.0 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_BL_SPAMCOP_NET, RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS,UNPARSEABLE_RELAY shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id EBB041F910 for ; Tue, 22 Nov 2022 11:19:01 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.b="s3lCuF3d"; dkim-atps=neutral Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 9043D120CEC; Tue, 22 Nov 2022 20:18:54 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id 9BD06120CD2 for ; Tue, 22 Nov 2022 20:18:51 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc; s=s1; bh=qFF/BziNt98geoa5olcfgM2LSkLrxnmMoBvMcTLWyoE=; b=s3lCuF3dO10xwW7Jkea7TipOUB6p54LaV1VnXdqBiKPkxUi9pJ+G6ltN6eIb2/7eL1Pt wT1h0mOlzhLkKZeTBSY3ggiBCppF7PqQksdbiYeOfJy4adcMg7rFijatp4dxqMeyg9TdfA HxprVMAkmi9/4Wir7hKH3m83+4jDxQlOJEm5kl+gr74TeQj7uG4WOLrTtHdl9mjaub0OU8 45k5MDe5oNYOt2uiSdBdWPYGlV8B8Qqd4VaGsXTEKGiGA7MdRIzumrH2f2gtvVw1aeuc3j 2efC6ZGxpWDJBt2Vb1c+A0KuGv+Y0NnvGq9nOcKABHWCYpKRJ3sdWG2f1GipLdWA== Received: by filterdrecv-6f5868ff54-z2lvw with SMTP id filterdrecv-6f5868ff54-z2lvw-1-637CB017-A 2022-11-22 11:18:47.21525887 +0000 UTC m=+389514.770490638 Received: from herokuapp.com (unknown) by geopod-ismtpd-3-5 (SG) with ESMTP id K7cp3eD7QKaVJNOtg7CRxw for ; Tue, 22 Nov 2022 11:18:47.171 +0000 (UTC) Date: Tue, 22 Nov 2022 11:18:47 +0000 (UTC) From: "Eregon (Benoit Daloze)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 19141 X-Redmine-Issue-Author: wildmaples X-Redmine-Sender: Eregon X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 87313 X-SG-EID: =?us-ascii?Q?DvL3W2Xo+Vk=2FeUn3F50L=2FNc8u9NqZCnbE0mXZHiyye4R1YZg=2FtAFc0SAFzpcS=2F?= =?us-ascii?Q?Zcr7BqPN=2FYCcMZBMITNeIci9STxYay0JAJWPbek?= =?us-ascii?Q?rFR+qVVUFBUtkUGMoRMJuFrYG1n5ug=2FhmEGo0Al?= =?us-ascii?Q?OVTM7qF6Q6GnqJR3eKQZBcF=2FmFNhMj5=2Fu020YPW?= =?us-ascii?Q?kayOpvSszkkMmW1jUhE5dNvjZ4cKtcpqZN=2FYF5x?= =?us-ascii?Q?S4=2FICkyNPVBUSgXVOf9SVWlqQggC4Nl5u26GEB7?= =?us-ascii?Q?s5mbCfD=2FWNO=2FLzXIk2Zsg=3D=3D?= To: ruby-core@neon.ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 110853 Subject: [ruby-core:110853] [Ruby master Feature#19141] Add thread-owned Monitor to protect thread-local resources X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Reply-To: Ruby developers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE5MTQxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4K CgpJdCdzIG5vdCBvbmx5IGFuIGlzc3VlIHdpdGggRmliZXIgc2NoZWR1bGVyIGFsdGhvdWdoIHRo YXQgaXMgdGhlIG1vc3Qgb2J2aW91cyB3YXkgdG8gaWxsdXN0cmF0ZS4KQWZ0ZXIgYWxsIEZpYmVy IHNjaGVkdWxlciBpcyBub3QgdGhlIG9ubHkgdXNhZ2Ugb2YgYHJlc3VtZWAvYHRyYW5zZmVyYC9g eWllbGRgLCBhbnkgZ2VtIG9yIGFwcCBtaWdodCB1c2UgdGhvc2UgYXMgd2VsbCBhbmQgbm90IGFs d2F5cyBpbiBjbGVhcmx5LWRlZmluZWQgcGxhY2VzIC8gaW4gYSBzdHJ1Y3R1cmVkIGNvbmN1cnJl bmN5IG1hbm5lci4KClN1cHBvc2Ugd2UgaGF2ZSBhIFRocmVhZDo6TW9uaXRvciwgaW4gdGhlIGV4 YW1wbGUgYmVsb3cgKHdpdGggbm8gRmliZXIgc2NoZWR1bGVyKSB3ZSBlbmQgdXAgaW4gdHdvIGJh ZCBjYXNlczoKKiBob2xkaW5nIHRoZSBsb2NrIGFmdGVyIHRoZSAuc3luY2hyb25pemV7fSByZXR1 cm5lZAoqIHVubG9ja2luZyB0aGUgbG9jayBwcmVlbXB0aXZlbHksIHBvdGVudGlhbGx5IGJyZWFr aW5nIHRoZSByZXNvdXJjZQoKSG93IGRvIHdlIGFkZHJlc3MgdGhpcyB3aXRoIFRocmVhZDo6TW9u aXRvcj8KV2l0aCBGaWJlci1iYXNlZCBgTW9uaXRvcmAgdGhlcmUgaXMgYSBjbGVhciBleGNlcHRp b24gYXMgc29vbiBhcyBlbnRlcmluZyBgZmAuCgpgYGBydWJ5Ck0gPSBUaHJlYWQ6Ok1vbml0b3Iu bmV3CgpmID0gRmliZXIubmV3IHsKICBNLnN5bmNocm9uaXplIHsKICAgICMgdXNpbmcgcHJvdGVj dGVkIHJlc291cmNlCiAgICBGaWJlci55aWVsZCAjIG9yIG90aGVyX2ZpYmVyLnRyYW5zZmVyCiAg ICAjIHVzaW5nIHByb3RlY3RlZCByZXNvdXJjZQogIH0KfQoKZGVmIHRyYW5zYWN0aW9uKG0pCiAg dCA9IFRyYW5zYWN0aW9uLm5ldwogIE0uc3luY2hyb25pemUgewogICAgeWllbGQKICB9CmVuc3Vy ZQogIHQuY29tbWl0X29yX2Fib3J0CmVuZAoKdHJhbnNhY3Rpb24gewogIGYucmVzdW1lCn0KIyBN IGlzIHN0aWxsIGhlbGQgYnkgZiBvciBieSBtYWluIEZpYmVyLCB0aGF0IGNvdWxkIGNhdXNlIGNv bmZ1c2luZyBkZWFkbG9ja3MKCnRyYW5zYWN0aW9uIHsKICBmLnJlc3VtZQogICMgTSBpcyBub3Qg aGVsZCBoZXJlIQogICMgbm93IGFub3RoZXIgRmliZXIvVGhyZWFkIGNvdWxkIGNvcnJ1cHQgdGhl IHJlc291cmNlCiAgc29tZV9tb3JlX2xvZ2ljCn0KYGBgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCkZlYXR1cmUgIzE5MTQxOiBBZGQgdGhyZWFkLW93bmVkIE1vbml0 b3IgdG8gcHJvdGVjdCB0aHJlYWQtbG9jYWwgcmVzb3VyY2VzCmh0dHBzOi8vYnVncy5ydWJ5LWxh bmcub3JnL2lzc3Vlcy8xOTE0MSNjaGFuZ2UtMTAwMjExCgoqIEF1dGhvcjogd2lsZG1hcGxlcyAo TWFwbGUgT25nKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIyMgQmFja2dyb3VuZCAKCkluIFJ1YnkgdjMu MC4yLCBNb25pdG9yIHdhcyBtb2RpZmllZCB0byBiZSBvd25lZCBieSBmaWJlcnMgaW5zdGVhZCBv ZiB0aHJlYWRzIFtmb3IgcmVhc29ucyBhcyBkZXNjcmliZWQgaW4gdGhpcyBpc3N1ZV0oaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE3ODI3KSBhbmQgc28gaXQgaXMgYWxzbyBjb25z aXN0ZW50IHdpdGggTXV0ZXguIEJlZm9yZSB0aGUgY2hhbmdlIHRvIE1vbml0b3IsIE11dGV4IHdh cyBtb2RpZmllZCB0byBwZXItZmliZXIgaW5zdGVhZCBvZiB0aHJlYWQgKFtpc3N1ZV0oaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE2NzkyKSwgW1BSXShodHRwczovL2dpdGh1Yi5j b20vcnVieS9ydWJ5L2NvbW1pdC8xNzhjMWIwOTIyZGM3Mjc4OTdkODFkN2NmZTljOTdkNWZmYTk3 ZmQ5KSkgd2hpY2ggY2F1c2VkIHNvbWUgcHJvYmxlbXMgKFNlZTogW2NvbW1lbnRdKGh0dHBzOi8v YnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNzgyNyNub3RlLTEpKS4gIAoKIyMjIFByb2JsZW0K CldlIGFyZSBub3cgZW5jb3VudGVyaW5nIGEgcHJvYmxlbSB3aGVyZSB1c2luZyBFbnVtZXJhdG9y IChpbXBsZW1lbnRlZCB0cmFuc3BhcmVudGx5IHVzaW5nIEZpYmVyLCBzbyB0aGUgdXNlciBpcyBu b3QgYXdhcmUpIHdpdGhpbiBhIEZpYmVyLW93bmVkIHByb2Nlc3MsIHdoaWNoIGNhdXNlcyBhIGRl YWRsb2NrLiBUaGF0IG1lYW5zIGFueSBmcmFtZXdvcmsgdXNpbmcgTW9uaXRvciBpcyBpbmNvbXBh dGlibGUgdG8gYmUgdXNlZCB3aXRoIEVudW1lcmF0b3IuIAoKSW4gZ2VuZXJhbCwgdGhlcmUgYXJl IG1hbnkgdHlwZXMgb2YgdGhyZWFkLWxvY2FsIHJlc291cmNlcyAoY29ubmVjdGlvbnMgZm9yIGV4 YW1wbGUpLCBzbyBpdCB3b3VsZCBtYWtlIHNlbnNlIHRvIGhhdmUgYSB0aHJlYWQtb3duZWQgbW9u aXRvciB0byBwcm90ZWN0IHRoZW0uIEkgdGhpbmsgZmV3IHJlc291cmNlcyBhcmUgcmVhbGx5IGZp YmVyLW93bmVkLgoKIyMjIyBTcGVjaWZpY3MgCiogQ29uY3VycmVudCBSdWJ5IGlzIHN0aWxsIGRl c2lnbmVkIHdpdGggcGVyLXRocmVhZCBsb2NraW5nLCB3aGljaCBjYXVzZXMgc2ltaWxhciBpbmNv bXBhdGliaWxpdGllcy4gKFJlYWQ6IFtpc3N1ZV0oaHR0cHM6Ly9naXRodWIuY29tL3J1YnktY29u Y3VycmVuY3kvY29uY3VycmVudC1ydWJ5L2lzc3Vlcy85NjIpKQoqIFN5c3RlbXMgdGVzdCBpbiBS YWlscyBpbXBsZW1lbnRzIGxvY2tpbmcgdXNpbmcgTW9uaXRvciwgcmVzdWx0aW5nIGluIGRlYWRs b2NrIGluIHRoZXNlIGtub3duIGNhc2VzOgogICogd2hlbiBjYWNoZSBjbGVhcmluZyAoUmVhZDog W2lzc3VlXShodHRwczovL2dpdGh1Yi5jb20vcmFpbHMvcmFpbHMvaXNzdWVzLzQ1OTk0KSkKICAq IGRhdGFiYXNlIHRyYW5zYWN0aW9ucyB3aGVuIHVzZWQgd2l0aCBFbnVtZXJhdG9yIChSZWFkOiBb Y29tbWVudF0oaHR0cHM6Ly9naXRodWIuY29tL3JhaWxzL3JhaWxzL2lzc3Vlcy80NTk5NCNpc3N1 ZWNvbW1lbnQtMTMwNDMwNjU3NSkpIAoKIyMjIERlbW8KCmBgYHJ1YnkKIyBydWJ5IDIuNy42cDIx OSAoMjAyMi0wNC0xMiByZXZpc2lvbiBjOWMyMjQ1YzBhKSBbYXJtNjQtZGFyd2luMjFdCiMgVGhy ZWFkICM8VGhyZWFkOjB4MDAwMDAwMDE0YThlYjIyOCBkZW1vLnJiOjggcnVuPiwgZmliZXIgIzxG aWJlcjoweDAwMDAwMDAxNGE4ZWFmODAgKHJlc3VtZWQpPiwgbG9ja2VkIHRydWUsIG93bmVkIHRy dWUKIyBUaHJlYWQgIzxUaHJlYWQ6MHgwMDAwMDAwMTRhOGViMjI4IGRlbW8ucmI6OCBydW4+LCBm aWJlciAjPEZpYmVyOjB4MDAwMDAwMDE0YThlYWNiMCBkZW1vLnJiOjEzIChyZXN1bWVkKT4sIGxv Y2tlZCB0cnVlLCBvd25lZCB0cnVlCgojIHJ1YnkgMy4xLjJwMjAgKDIwMjItMDQtMTIgcmV2aXNp b24gNDQ5MWJiNzQwYSkgW2FybTY0LWRhcndpbjIxXQojIFRocmVhZCAjPFRocmVhZDoweDAwMDAw MDAxMDIzMjlhMDggZGVtby5yYjo4IHJ1bj4sIGZpYmVyICM8RmliZXI6MHgwMDAwMDAwMTAyMzI5 ODI4IChyZXN1bWVkKT4sIGxvY2tlZCB0cnVlLCBvd25lZCB0cnVlCiMgVGhyZWFkICM8VGhyZWFk OjB4MDAwMDAwMDEwMjMyOWEwOCBkZW1vLnJiOjggcnVuPiwgZmliZXIgIzxGaWJlcjoweDAwMDAw MDAxMDIzMjk0ZTAgZGVtby5yYjoxMyAocmVzdW1lZCk+LCBsb2NrZWQgdHJ1ZSwgb3duZWQgZmFs c2UKCnJlcXVpcmUgJ2ZpYmVyJwpyZXF1aXJlICdtb25pdG9yJwoKcHV0cyBSVUJZX0RFU0NSSVBU SU9OCgojIFdlIGhhdmUgYSBzaW5nbGUgbW9uaXRvciAtIHdlJ3JlIHByZXRlbmRpbmcgaXQgcHJv dGVjdHMgc29tZSB0aHJlYWQtbG9jYWwgcmVzb3VyY2VzCm0gPSBNb25pdG9yLm5ldwoKIyBXZSds bCBjcmVhdGUgYW4gZXhwbGljaXQgdGhyZWFkCnQgPSBUaHJlYWQubmV3IGRvCiAgIyBMb2NrIHRv IHByb3RlY3Qgb3VyIHRocmVhZC1sb2NhbCByZXNvdXJjZQogIG0uZW50ZXIKCiAgcHV0cyAiVGhy ZWFkICN7VGhyZWFkLmN1cnJlbnR9LCBmaWJlciAje0ZpYmVyLmN1cnJlbnR9LCBsb2NrZWQgI3tt Lm1vbl9sb2NrZWQ/fSwgb3duZWQgI3ttLm1vbl9vd25lZD99IgoKICAjIFRoZSBFbnVtZXJhdG9y IGhlcmUgY3JlYXRlcyBhIGZpYmVyLCB3aGljaCBydW5zIG9uIHRoZSBzYW1lIHRocmVhZCwgc28g d291bGQgd2FudCB0byB1c2UgdGhlIHNhbWUgdGhyZWFkLWxvY2FsIHJlc291cmNlCiAgZSA9IEVu dW1lcmF0b3IubmV3IGRvIHx5fAogICAgIyBJbiAyLjcgdGhpcyBpcyBmaW5lLCBpbiAzLjAgaXQn cyBub3QsIGFzIHRoZSBmaWJlciB0aGlua3MgaXQgZG9lc24ndCBoYXZlIHRoZSBsb2NrCiAgICBw dXRzICJUaHJlYWQgI3tUaHJlYWQuY3VycmVudH0sIGZpYmVyICN7RmliZXIuY3VycmVudH0sIGxv Y2tlZCAje20ubW9uX2xvY2tlZD99LCBvd25lZCAje20ubW9uX293bmVkP30iCiAgICAKICAgICMg VGhpcyB3b3VsZCBkZWFkbG9jawogICAgIyBtLmVudGVyCgogICAgeS55aWVsZCAxCiAgZW5kCiAg ZS5uZXh0CmVuZAoKdC5qb2luCmBgYAoKIyMjIFBvc3NpYmxlIFNvbHV0aW9ucwoKKiBBbGxvdyBg TW9uaXRvcmAgdG8gYmUgcGVyIHRocmVhZCBvciBmaWJlciB0aHJvdWdoIGEgZmxhZwoqIEhhdmlu ZyBgVGhyZWFkOjpNb25pdG9yYCBhbmQgYEZpYmVyOjpNb25pdG9yYCBhcyB0d28gc2VwYXJhdGUg Y2xhc3Nlcy4gTGVhdmUgYE1vbml0b3JgIGFzIGl0IGlzIHJpZ2h0IG5vdy4gSG93ZXZlciwgdGhp cyBtYXkgbm90IGJlIHBvc3NpYmxlIGR1ZSB0byB0aGUgYFRocmVhZDo6TXV0ZXhgIGFsaWFzIAoK VGhlc2Ugb3B0aW9ucyB3b3VsZCBnaXZlIHVzIG1vcmUgZmxleGliaWxpdHkgaW4gd2hpY2ggdHlw ZSBvZiBNb25pdG9yIHRvIHVzZS4gCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8K