[#86520] [Ruby trunk Bug#14681] `syswrite': stream closed in another thread (IOError) — samuel@...
Issue #14681 has been reported by ioquatix (Samuel Williams).
3 messages
2018/04/12
[#86755] [Ruby trunk Feature#14723] [WIP] sleepy GC — normalperson@...
Issue #14723 has been reported by normalperson (Eric Wong).
6 messages
2018/04/29
[ruby-core:86717] [Ruby trunk Feature#14717] [PATCH] thread: allow disabling preempt
From:
normalperson@...
Date:
2018-04-27 08:09:19 UTC
List:
ruby-core #86717
Issue #14717 has been reported by normalperson (Eric Wong).
----------------------------------------
Feature #14717: [PATCH] thread: allow disabling preempt
https://bugs.ruby-lang.org/issues/14717
* Author: normalperson (Eric Wong)
* Status: Open
* Priority: Normal
* Assignee:
* Target version:
----------------------------------------
In some cases, it may be beneficial to disable preemptibility to
have more predictable behavior than increasing Thread#priority.
Threads with preempt disabled will run until they either:
a) encounter a thread blocking region
b) call Thread.pass
This allows native threads to act cooperatively without
being interrupted by other threads.
Thread#preemptible? => true or false
Thread#preemptible = (true|false)
I plan to implement timer-based switching to "auto-fiber/threadlet/thriber/whatever-name"
[Feature #13618] to minimize migration costs from Thread.
However, I think based on the discussion in [Feature #13618]; having
predictability of non-preemptible threads is beneficial. So implement it
for native Thread for now.
I will unify the behavior of [Feature #13618] with existing Thread.
I think green/native threads can be unified under Thread class similar to
how Fixnum/Bignum are both "Integer".
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>