[ruby-core:109975] [Ruby master Feature#18411] Introduce `Fiber.blocking` for disabling scheduler.
From:
"ioquatix (Samuel Williams)" <noreply@...>
Date:
2022-09-21 10:51:56 UTC
List:
ruby-core #109975
SXNzdWUgIzE4NDExIGhhcyBiZWVuIHVwZGF0ZWQgYnkgaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFt cykuCgoKYGlvX3VyaW5nYCBoYW5kbGVzIG5vbi1ibG9ja2luZyByZWFkIGFuZCB3cml0ZSBzeXN0 ZW0gY2FsbHMgdXNpbmcgdGhlIHJpbmcgYnVmZmVyLiBTbyBldmVuIGByZWFkX25vbmJsb2NrYCBh bmQgYHdyaXRlX25vbmJsb2NrYCBzeXN0ZW0gY2FsbHMgY2FuIGdvIHZpYSB0aGUgZmliZXIgc2No ZWR1bGVyLiBUaGUgc3lzdGVtIGNhbGwgaXRzZWxmIGlzIGFzeW5jaHJvbm91cyBldmVuIGlmIHRo ZSBJTyBpcyBub24tYmxvY2tpbmcuIEkgaGF2ZSBub3QgaW52ZXN0aWdhdGVkIHRoZSBwZXJmb3Jt YW5jZSBtdWNoIHNpbmNlIGBpb191cmluZ2AgaGFzIG5vdCBiZWVuIGluIGEgY29tcGxldGVseSB1 c2FibGUgc3RhdGUgeWV0LiBCdXQgcmVjZW50bHkgaXQgd2FzIG11Y2ggYmV0dGVyLCBzbyBJIG1h eSBiZWdpbiB0aGlzIGV2YWx1YXRpb24gc29vbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTg0MTE6IEludHJvZHVjZSBgRmliZXIuYmxvY2tpbmdg IGZvciBkaXNhYmxpbmcgc2NoZWR1bGVyLgpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1 ZXMvMTg0MTEjY2hhbmdlLTk5MjI1CgoqIEF1dGhvcjogaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFt cykKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KV2hlbiBpbXBsZW1lbnRpbmcgcHVyZS1ydWJ5IElPIHNjaGVk dWxlciwgd2UgbWF5IG5lZWQgdG8gaW52b2tlIHNvbWUgUnVieSBJTyBvcGVyYXRpb25zIHdpdGhv dXQgZW50ZXJpbmcgdGhlIHNjaGVkdWxlci4KCmBgYHJ1YnkKZGVmIGlvX3dyaXRlKGZpYmVyLCBp bywgYnVmZmVyLCBsZW5ndGgpCiAgb2Zmc2V0ID0gMAogIAogIHdoaWxlIGxlbmd0aCA+IDAKICAg ICMgRnJvbSBvZmZzZXQgdW50aWwgdGhlIGVuZDoKICAgIGNodW5rID0gYnVmZmVyLnRvX3N0cihv ZmZzZXQsIGxlbmd0aCkKICAgIGNhc2UgcmVzdWx0ID0gaW8ud3JpdGVfbm9uYmxvY2soY2h1bmss IGV4Y2VwdGlvbjogZmFsc2UpCiAgICB3aGVuIDp3YWl0X3JlYWRhYmxlCiAgICAgIHNlbGYuaW9f d2FpdChmaWJlciwgaW8sIElPOjpSRUFEQUJMRSkKICAgIHdoZW4gOndhaXRfd3JpdGFibGUKICAg ICAgc2VsZi5pb193YWl0KGZpYmVyLCBpbywgSU86OldSSVRBQkxFKQogICAgZWxzZQogICAgICBv ZmZzZXQgKz0gcmVzdWx0CiAgICAgIGxlbmd0aCAtPSByZXN1bHQKICAgIGVuZAogIGVuZAogIAog IHJldHVybiBvZmZzZXQKZW5kCmBgYAoKVGhlcmUgYXJlIHNvbWUgY2FzZXMgd2hlcmUgZXZlbiBp biB0aGlzIGNvZGUgYHJlYWRfbm9uYmxvY2tgIGNhbiBpbnZva2UgZmliZXIgc2NoZWR1bGVyIGNy ZWF0aW5nIGluZmluaXRlIHJlY3Vyc2lvbi4KClRoZXJlZm9yZSwgSSBwcm9wb3NlIHRvIGludHJv ZHVjZSBgRmliZXIuYmxvY2tpbmd7Li4ufWAgd2hpY2ggaGFzIGFsbW9zdCBpZGVudGljYWwgaW1w bGVtZW50YXRpb24gdG8gYEZpYmVyLm5ldyhibG9ja2luZzogdHJ1ZSkge30ucmVzdW1lYC4KCklu IHRoZSBhYm92ZSBjb2RlLCB3ZSBjaGFuZ2UgdGhlIGxpbmU6CgpgYGAKICAgIGNhc2UgcmVzdWx0 ID0gaW8ud3JpdGVfbm9uYmxvY2soY2h1bmssIGV4Y2VwdGlvbjogZmFsc2UpCmBgYAoKdG8KCmBg YAogICAgY2FzZSByZXN1bHQgPSBGaWJlci5ibG9ja2luZ3tpby53cml0ZV9ub25ibG9jayhjaHVu aywgZXhjZXB0aW9uOiBmYWxzZSl9CmBgYAoKVGhpcyBlbnN1cmVzIHRoYXQgYHdyaXRlX25vbmJs b2NrYCBjYW4gbmV2ZXIgZW50ZXIgdGhlIHNjaGVkdWxlciBhZ2Fpbi4KCgoKLS0gCmh0dHBzOi8v YnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVl c3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1Ynkt bGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=