[ruby-core:109573] [Ruby master Feature#18965] Further Thread::Queue improvements
From:
"byroot (Jean Boussier)" <noreply@...>
Date:
2022-08-19 11:33:32 UTC
List:
ruby-core #109573
SXNzdWUgIzE4OTY1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgYnlyb290IChKZWFuIEJvdXNzaWVyKS4K CgpBbHNvIG5vdGUgdGhhdCBJIGRpZCBhIHNpbmdsZSB0aWNrZXQgZm9yIDMgc29tZXdoYXQgcmVs YXRlZCBmZWF0dXJlcywgYnV0IGlmIGBjb25jYXRgIChha2EgYmF0Y2ggcHVzaCkgaXMgZGVlbWVk IHVuZGVzaXJhYmxlLCBpcyBkb2Vzbid0IHByZXZlbnQgZnJvbSBnb2luZyBhaGVhZCB3aXRoIHRo ZSBvdGhlciB0d28gc3VnZ2VzdGVkIGZlYXR1cmVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxODk2NTogRnVydGhlciBUaHJlYWQ6OlF1ZXVlIGlt cHJvdmVtZW50cwpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTg5NjUjY2hhbmdl LTk4NzQ1CgoqIEF1dGhvcjogYnlyb290IChKZWFuIEJvdXNzaWVyKQoqIFN0YXR1czogT3Blbgoq IFByaW9yaXR5OiBOb3JtYWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQpGb2xsb3dpbmcgdGhlIHJlY2VudCBhZGRpdGlvbiBvZiBhIGB0aW1lb3V0YCBwYXJhbWV0ZXIg dG8gYFF1ZXVlI3BvcGAsIHRoZXJlIGFyZSBhIGhhbmRmdWwgb2Ygb3RoZXIgaW1wcm92ZW1lbnRz IEknZCBsaWtlIHRvIG1ha2UuCgoKIyMjIEJhdGNoIGluc2VydAoKV2hlbiB1c2luZyB0aGUgcXVl dWUgZm9yIGJhdGNoIHByb2Nlc3NpbmcsIGl0IHdvdWxkIGJlIGdvb2QgdG8gYmUgYWJsZSB0byBw dXNoIG11bHRpcGxlIGVsZW1lbnRzIGF0IG9uY2U6CgpDdXJyZW50bHkgeW91IGhhdmUgdG8gY2Fs bCBgcHVzaGAgcmVwZWF0ZWRseQoKYGBgcnVieQppdGVtcy5lYWNoIGRvIHxpdGVtfAogIHF1ZXVl LnB1c2goaXRlbSkKZW5kCmBgYAoKVGhhdCdzIHdhc3RlZnVsIGJlY2F1c2Ugb24gZWFjaCBjYWxs IHdlIGNoZWNrIHdldGhlciB0aGUgcXVldWUgaXMgY2xvc2VkLCB0cnkgdG8gd2FrZXVwIGJsb2Nr ZWQgdGhyZWFkcywgZXRjLgoKSXQgd291bGQgYmUgbXVjaCBiZXR0ZXIgaWYgeW91IGNvdWxkIGRv OgoKYGBgcnVieQpxdWV1ZS5jb25jYXQoaXRlbXMpCmBgYAoKV2l0aCBvZiBjb3Vyc2UgYm90aCBg bm9uYmxvY2tgIGFuZCBgdGltZW91dGAgc3VwcG9ydC4KClRoZW4gdGhlcmUncyB0aGUgcXVlc3Rp b24gb2YgaG93IGBTaXplZFF1ZXVlYCB3b3VsZCBiZWhhdmUgaWYgaXQncyBub3QgZnVsbCwgYnV0 IHN0aWxsIGRvZXNuJ3QgaGF2ZSBzcGFjZSBmb3IgYWxsIHRoZSBlbGVtZW50cy4gZS5nLgpgYGBy dWJ5CnF1ZXVlID0gU2l6ZWRRdWV1ZS5uZXcoMTApCnF1ZXVlLmNvbmNhdCg2LnRpbWVzLnRvX2Ep CnF1ZXVlLmNvbmNhdCg2LnRpbWVzLnRvX2EpICMgQmxvY2sgdW50aWwgdGhlcmUgaXMgNiBmcmVl IHNsb3RzPwpgYGAKCkkgdGhpbmsgdGhlIHNpbXBsZXN0IHdvdWxkIGJlIHRvIHdhaXQgZm9yIGVu b3VnaCBzcGFjZSB0byBhcHBlbmQgdGhlIGVudGlyZSBzZXQsIGJlY2F1c2UgY29tYmluZWQgd2l0 aCBhIHRpbWVvdXQsIGl0IHdvdWxkIGJlIGF3a3dhcmQgaWYgb25seSBwYXJ0IG9mIHRoZSBhcnJh eSB3YXMgY29uY2F0ZW5hdGVkLgoKCiMjIyBCYXRjaCBwb3AKClNpbWlsYXJseSwgc29tZXRpbWVz IHRoZSBjb25zdW1lciBvZiBhIHF1ZXVlIGlzIGNhcGFibGUgb2YgYmF0Y2hpbmcsIGFuZCByaWdo dCBub3cgaXQncyBub3QgZWZmaWNpZW50OgoKCmBgYHJ1YnkKbG9vcCBkbwogIGl0ZW1zID0gW3F1 ZXVlLnBvcF0KICBiZWdpbgogICAgOTkudGltZXMgZG8KICAgICAgaXRlbXMgPDwgcXVldWUucG9w KHRydWUpICMgdHJ1ZSBpcyBmb3Igbm9uYmxvY2sKICAgIGVuZAogIHJlc2N1ZSBUaHJlYWRFcnJv ciAjIGVtcHR5IHF1ZXVlCiAgZW5kCiAgcHJvY2Vzc19pdGVtcyhpdGVtcykKZW5kCmBgYAoKSXQg d291bGQgYmUgbXVjaCBtb3JlIGVmZmljaWVudCBpZiBgcG9wYCBhY2NlcHRlZCBhIGBjb3VudGAg cGFyYW1ldGVyOgoKYGBgcnVieQpsb29wIGRvCiAgaXRlbXMgPSBxdWV1ZS5wb3AoY291bnQ6IDEw MCkKICBwcm9jZXNzX2l0ZW1zKGl0ZW1zKQplbmQKYGBgCgpUaGUgYmVoYXZpb3Igd291bGQgYmU6 CiAgLSBCbG9jayBpZiB0aGUgcXVldWUgaXMgZW1wdHkKICAtIElmIGl0J3Mgbm90IGVtcHR5LCBy ZXR1cm4gKip1cCB0byoqIGBjb3VudGAgaXRlbXMgKEp1c3QgbGlrZSBgQXJyYXkjcG9wYCkKCgoj IyMgTm9uIGJsb2NraW5nIG1vZGUsIHdpdGhvdXQgZXhjZXB0aW9uCgpBcyBzaG93biBhYm92ZSwg dGhlIGN1cnJlbnQgYG5vbmJsb2NrYCBwYXJhbWV0ZXIgaXMgYSBiaXQgYXdrd2FyZCwgYmVjYXVz ZToKCiAgLSBJdCByYWlzZXMgYW4gZXhjZXB0aW9uLCB3aGljaCBpcyB2ZXJ5IGV4cGVuc2l2ZSBm b3IgYSBjb25zdHJ1Y3Qgb2Z0ZW4gdXNlZCBpbiAibG93IGxldmVsIiBjb2RlLgogIC0gVGhlIGV4 Y2VwdGlvbiBpcyBgVGhyZWFkRXJyb3JgLCBzbyB5b3UgbWF5IGhhdmUgdG8gbWF0Y2ggdGhlIGVy cm9yIG1lc3NhZ2UgZm9yIGAicXVldWUgZW1wdHkiYCwgdG8gbWFrZSBzdXJlIGl0IGRvZXNuJ3Qg Y29tZSBmcm9tIGEgTXV0ZXggaXNzdWUgb3Igc29tZXRoaW5nIGxpa2UgdGhhdC4KCgpJIGJlbGll dmUgdGhhdCB3ZSBjb3VsZCBpbnRyb2R1Y2UgYSBrZXl3b3JkIGFyZ3VtZW50OgoKYGBgcnVieQpR dWV1ZS5uZXcucG9wKG5vbmJsb2NrOiB0cnVlKSAjID0+IG5pbApgYGAKCgoKCi0tIApodHRwczov L2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vic2NyaWJlOiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1 ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNjcmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5 LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25zL3J1YnktY29yZT4K