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 086E51F910 for ; Tue, 22 Nov 2022 17:24:51 +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="RiBvy8zp"; dkim-atps=neutral Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 7CDAF120D32; Wed, 23 Nov 2022 02:24:49 +0900 (JST) Received: from o1678948x4.outbound-mail.sendgrid.net (o1678948x4.outbound-mail.sendgrid.net [167.89.48.4]) by neon.ruby-lang.org (Postfix) with ESMTPS id 049B4120CBC for ; Wed, 23 Nov 2022 02:24:47 +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=iEqwS0OW3AU6xSPVo+HHgyjrXxv91G+mRf5utAk7DDw=; b=RiBvy8zpEUvSGfkUIQ2pWfFF2qjptHKQDrt/+O3eWcQlilALrcRYXw/SliRzKdzu7qYC i1Hin1ZV5iSWI16P43m2tyrn5Z0UCdOrBK+cNZosZORZGOyLWa7cccf3xxKd21D5j9FDjg pWQeCRAYCf4FzEeOBM7tWrvCEJ70Bz6RXNwbBdCCQGhUIRkr75xmXr1jY7e6D/u/Kw8G0+ ZaHZjk9fGkkjqUbhxfzlmxSO5Np9RnjWhuBI/ObHq+w+zK1v9ma3+x8N68DDZuSLnOFMGW 5/iqXsFGzfROr/DGL1X1ffO02PBJDWU1FLPdSSJof3OKUIpexN6K5jrWP4Jb42Vg== Received: by filterdrecv-69c5db5cf4-hqnpt with SMTP id filterdrecv-69c5db5cf4-hqnpt-1-637D05DE-12 2022-11-22 17:24:46.234341798 +0000 UTC m=+411401.453710637 Received: from herokuapp.com (unknown) by geopod-ismtpd-3-6 (SG) with ESMTP id gpi3K92hRM6I9DQUqNJJiQ for ; Tue, 22 Nov 2022 17:24:46.185 +0000 (UTC) Date: Tue, 22 Nov 2022 17:24:46 +0000 (UTC) From: "chrisseaton (Chris Seaton)" 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: chrisseaton 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: 87318 X-SG-EID: =?us-ascii?Q?955+Sha5zT9JvJEGA0pEH+PLRI7xgFSEgxhG=2Ft17QF=2FlmxVXVwOzSecIY777x4?= =?us-ascii?Q?=2F=2FVC52175RvzxoZpb3l2+qjQgbHeC2q9JfQiAas?= =?us-ascii?Q?M5fGdWMjN3PcsdLnoVrbbh1FdEjfDQ5y=2F5k3Gda?= =?us-ascii?Q?Eku6YisrVHUIj0gYlKGPvwovgXdD7iGU5YRr4yF?= =?us-ascii?Q?UywG3tJTjB0+Li+d7Xtq0kbdo8SyneUgcXBEArL?= =?us-ascii?Q?RihZXmUKIYl7SgMv=2FOUIODW4CVFm+hwvYuc+nRy?= =?us-ascii?Q?1yOc9rUeDZeFSlwf+gcmA=3D=3D?= To: ruby-core@neon.ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 110858 Subject: [ruby-core:110858] [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" SXNzdWUgIzE5MTQxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgY2hyaXNzZWF0b24gKENocmlzIFNlYXRv bikuCgoKTWF5YmUgYEVudW1lcmF0b3JgIHNob3VsZCBub3QgdXNlIGEgZnVsbCBmaWJlciAtIGJ1 dCBzb21ldGhpbmcgbGVzcyB0aGF0IGJlaGF2ZXMgbGlrZSB0aGUgdGhyZWFkIGl0J3MgcnVuIG9u PyBBbiB1bmRlcmx5aW5nIGlzc3VlIGlzIHRoYXQgdGhlIHVzZXIgZG9lc24ndCBrbm93IHRoZXkn cmUgdXNpbmcgYSBmaWJlciwgYW5kIHJlYWxseSBob3cgY2FuIHdlIGV4cGVjdCB0aGVtIHRvPwoK LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxOTE0MTog QWRkIHRocmVhZC1vd25lZCBNb25pdG9yIHRvIHByb3RlY3QgdGhyZWFkLWxvY2FsIHJlc291cmNl cwpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTkxNDEjY2hhbmdlLTEwMDIxOQoK KiBBdXRob3I6IHdpbGRtYXBsZXMgKE1hcGxlIE9uZykKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0 eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyMjIEJh Y2tncm91bmQgCgpJbiBSdWJ5IHYzLjAuMiwgTW9uaXRvciB3YXMgbW9kaWZpZWQgdG8gYmUgb3du ZWQgYnkgZmliZXJzIGluc3RlYWQgb2YgdGhyZWFkcyBbZm9yIHJlYXNvbnMgYXMgZGVzY3JpYmVk IGluIHRoaXMgaXNzdWVdKGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNzgyNykg YW5kIHNvIGl0IGlzIGFsc28gY29uc2lzdGVudCB3aXRoIE11dGV4LiBCZWZvcmUgdGhlIGNoYW5n ZSB0byBNb25pdG9yLCBNdXRleCB3YXMgbW9kaWZpZWQgdG8gcGVyLWZpYmVyIGluc3RlYWQgb2Yg dGhyZWFkIChbaXNzdWVdKGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNjc5Miks IFtQUl0oaHR0cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9jb21taXQvMTc4YzFiMDkyMmRjNzI3 ODk3ZDgxZDdjZmU5Yzk3ZDVmZmE5N2ZkOSkpIHdoaWNoIGNhdXNlZCBzb21lIHByb2JsZW1zIChT ZWU6IFtjb21tZW50XShodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTc4Mjcjbm90 ZS0xKSkuICAKCiMjIyBQcm9ibGVtCgpXZSBhcmUgbm93IGVuY291bnRlcmluZyBhIHByb2JsZW0g d2hlcmUgdXNpbmcgRW51bWVyYXRvciAoaW1wbGVtZW50ZWQgdHJhbnNwYXJlbnRseSB1c2luZyBG aWJlciwgc28gdGhlIHVzZXIgaXMgbm90IGF3YXJlKSB3aXRoaW4gYSBGaWJlci1vd25lZCBwcm9j ZXNzLCB3aGljaCBjYXVzZXMgYSBkZWFkbG9jay4gVGhhdCBtZWFucyBhbnkgZnJhbWV3b3JrIHVz aW5nIE1vbml0b3IgaXMgaW5jb21wYXRpYmxlIHRvIGJlIHVzZWQgd2l0aCBFbnVtZXJhdG9yLiAK CkluIGdlbmVyYWwsIHRoZXJlIGFyZSBtYW55IHR5cGVzIG9mIHRocmVhZC1sb2NhbCByZXNvdXJj ZXMgKGNvbm5lY3Rpb25zIGZvciBleGFtcGxlKSwgc28gaXQgd291bGQgbWFrZSBzZW5zZSB0byBo YXZlIGEgdGhyZWFkLW93bmVkIG1vbml0b3IgdG8gcHJvdGVjdCB0aGVtLiBJIHRoaW5rIGZldyBy ZXNvdXJjZXMgYXJlIHJlYWxseSBmaWJlci1vd25lZC4KCiMjIyMgU3BlY2lmaWNzIAoqIENvbmN1 cnJlbnQgUnVieSBpcyBzdGlsbCBkZXNpZ25lZCB3aXRoIHBlci10aHJlYWQgbG9ja2luZywgd2hp Y2ggY2F1c2VzIHNpbWlsYXIgaW5jb21wYXRpYmlsaXRpZXMuIChSZWFkOiBbaXNzdWVdKGh0dHBz Oi8vZ2l0aHViLmNvbS9ydWJ5LWNvbmN1cnJlbmN5L2NvbmN1cnJlbnQtcnVieS9pc3N1ZXMvOTYy KSkKKiBTeXN0ZW1zIHRlc3QgaW4gUmFpbHMgaW1wbGVtZW50cyBsb2NraW5nIHVzaW5nIE1vbml0 b3IsIHJlc3VsdGluZyBpbiBkZWFkbG9jayBpbiB0aGVzZSBrbm93biBjYXNlczoKICAqIHdoZW4g Y2FjaGUgY2xlYXJpbmcgKFJlYWQ6IFtpc3N1ZV0oaHR0cHM6Ly9naXRodWIuY29tL3JhaWxzL3Jh aWxzL2lzc3Vlcy80NTk5NCkpCiAgKiBkYXRhYmFzZSB0cmFuc2FjdGlvbnMgd2hlbiB1c2VkIHdp dGggRW51bWVyYXRvciAoUmVhZDogW2NvbW1lbnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9yYWlscy9y YWlscy9pc3N1ZXMvNDU5OTQjaXNzdWVjb21tZW50LTEzMDQzMDY1NzUpKSAKCiMjIyBEZW1vCgpg YGBydWJ5CiMgcnVieSAyLjcuNnAyMTkgKDIwMjItMDQtMTIgcmV2aXNpb24gYzljMjI0NWMwYSkg W2FybTY0LWRhcndpbjIxXQojIFRocmVhZCAjPFRocmVhZDoweDAwMDAwMDAxNGE4ZWIyMjggZGVt by5yYjo4IHJ1bj4sIGZpYmVyICM8RmliZXI6MHgwMDAwMDAwMTRhOGVhZjgwIChyZXN1bWVkKT4s IGxvY2tlZCB0cnVlLCBvd25lZCB0cnVlCiMgVGhyZWFkICM8VGhyZWFkOjB4MDAwMDAwMDE0YThl YjIyOCBkZW1vLnJiOjggcnVuPiwgZmliZXIgIzxGaWJlcjoweDAwMDAwMDAxNGE4ZWFjYjAgZGVt by5yYjoxMyAocmVzdW1lZCk+LCBsb2NrZWQgdHJ1ZSwgb3duZWQgdHJ1ZQoKIyBydWJ5IDMuMS4y cDIwICgyMDIyLTA0LTEyIHJldmlzaW9uIDQ0OTFiYjc0MGEpIFthcm02NC1kYXJ3aW4yMV0KIyBU aHJlYWQgIzxUaHJlYWQ6MHgwMDAwMDAwMTAyMzI5YTA4IGRlbW8ucmI6OCBydW4+LCBmaWJlciAj PEZpYmVyOjB4MDAwMDAwMDEwMjMyOTgyOCAocmVzdW1lZCk+LCBsb2NrZWQgdHJ1ZSwgb3duZWQg dHJ1ZQojIFRocmVhZCAjPFRocmVhZDoweDAwMDAwMDAxMDIzMjlhMDggZGVtby5yYjo4IHJ1bj4s IGZpYmVyICM8RmliZXI6MHgwMDAwMDAwMTAyMzI5NGUwIGRlbW8ucmI6MTMgKHJlc3VtZWQpPiwg bG9ja2VkIHRydWUsIG93bmVkIGZhbHNlCgpyZXF1aXJlICdmaWJlcicKcmVxdWlyZSAnbW9uaXRv cicKCnB1dHMgUlVCWV9ERVNDUklQVElPTgoKIyBXZSBoYXZlIGEgc2luZ2xlIG1vbml0b3IgLSB3 ZSdyZSBwcmV0ZW5kaW5nIGl0IHByb3RlY3RzIHNvbWUgdGhyZWFkLWxvY2FsIHJlc291cmNlcwpt ID0gTW9uaXRvci5uZXcKCiMgV2UnbGwgY3JlYXRlIGFuIGV4cGxpY2l0IHRocmVhZAp0ID0gVGhy ZWFkLm5ldyBkbwogICMgTG9jayB0byBwcm90ZWN0IG91ciB0aHJlYWQtbG9jYWwgcmVzb3VyY2UK ICBtLmVudGVyCgogIHB1dHMgIlRocmVhZCAje1RocmVhZC5jdXJyZW50fSwgZmliZXIgI3tGaWJl ci5jdXJyZW50fSwgbG9ja2VkICN7bS5tb25fbG9ja2VkP30sIG93bmVkICN7bS5tb25fb3duZWQ/ fSIKCiAgIyBUaGUgRW51bWVyYXRvciBoZXJlIGNyZWF0ZXMgYSBmaWJlciwgd2hpY2ggcnVucyBv biB0aGUgc2FtZSB0aHJlYWQsIHNvIHdvdWxkIHdhbnQgdG8gdXNlIHRoZSBzYW1lIHRocmVhZC1s b2NhbCByZXNvdXJjZQogIGUgPSBFbnVtZXJhdG9yLm5ldyBkbyB8eXwKICAgICMgSW4gMi43IHRo aXMgaXMgZmluZSwgaW4gMy4wIGl0J3Mgbm90LCBhcyB0aGUgZmliZXIgdGhpbmtzIGl0IGRvZXNu J3QgaGF2ZSB0aGUgbG9jawogICAgcHV0cyAiVGhyZWFkICN7VGhyZWFkLmN1cnJlbnR9LCBmaWJl ciAje0ZpYmVyLmN1cnJlbnR9LCBsb2NrZWQgI3ttLm1vbl9sb2NrZWQ/fSwgb3duZWQgI3ttLm1v bl9vd25lZD99IgogICAgCiAgICAjIFRoaXMgd291bGQgZGVhZGxvY2sKICAgICMgbS5lbnRlcgoK ICAgIHkueWllbGQgMQogIGVuZAogIGUubmV4dAplbmQKCnQuam9pbgpgYGAKCiMjIyBQb3NzaWJs ZSBTb2x1dGlvbnMKCiogQWxsb3cgYE1vbml0b3JgIHRvIGJlIHBlciB0aHJlYWQgb3IgZmliZXIg dGhyb3VnaCBhIGZsYWcKKiBIYXZpbmcgYFRocmVhZDo6TW9uaXRvcmAgYW5kIGBGaWJlcjo6TW9u aXRvcmAgYXMgdHdvIHNlcGFyYXRlIGNsYXNzZXMuIExlYXZlIGBNb25pdG9yYCBhcyBpdCBpcyBy aWdodCBub3cuIEhvd2V2ZXIsIHRoaXMgbWF5IG5vdCBiZSBwb3NzaWJsZSBkdWUgdG8gdGhlIGBU aHJlYWQ6Ok11dGV4YCBhbGlhcyAKClRoZXNlIG9wdGlvbnMgd291bGQgZ2l2ZSB1cyBtb3JlIGZs ZXhpYmlsaXR5IGluIHdoaWNoIHR5cGUgb2YgTW9uaXRvciB0byB1c2UuIAoKCgotLSAKaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvCg==