Age | Commit message (Collapse) | Author |
|
... and list it.
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Redirect `rb_nogvl` blocking operations to the fiber scheduler if possible
to prevent stalling the event loop.
[Feature #20876]
Notes:
Merged-By: ioquatix <[email protected]>
|
|
This reverts some of commit 87fb44dff6409a19d12052cf0fc07ba80a4c45ac.
We will rename and propose a slightly different interface.
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
|
|
Each of Fiber::Scheduler#io_read and io_write takes the "offset" as the fourth argument, which is not doucmented.
Notes:
Merged: https://github.com/ruby/ruby/pull/8407
|
|
* Skip test if non-blocking file IO is not supported.
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Co-authored-by: Samuel Williams <[email protected]>
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6721
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
(#6559)
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Get rid of the conflict with system-provided small `off_t`.
Notes:
Merged: https://github.com/ruby/ruby/pull/6329
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5249
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5303
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5301
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4621
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4656
|
|
close.
Notes:
Merged: https://github.com/ruby/ruby/pull/4658
|
|
* --braces-after-func-def-line
* --dont-cuddle-else
* --procnames-start-lines
* --space-after-for
* --space-after-if
* --space-after-while
|
|
These methods are not !-suffixed, and the messages were very
confusing.
|
|
* Wake up join list within thread EC context.
* Consume items from join list so that they are not re-executed.
If `rb_fiber_scheduler_unblock` raises an exception, it can result in a
segfault if `rb_threadptr_join_list_wakeup` is not within a valid EC. This
change moves `rb_threadptr_join_list_wakeup` into the thread's top level EC
which initially caused an infinite loop because on exception will retry. We
explicitly remove items from the thread's join list to avoid this situation.
* Verify the required scheduler interface.
* Test several scheduler hooks methods with broken `unblock` implementation.
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Co-authored-by: Bruno Sutic <[email protected]>
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
# Conflicts:
# scheduler.c
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4173
|
|
|
|
* Rename `rb_scheduler` to `rb_fiber_scheduler`.
* Use public interface if available.
* Use `rb_check_funcall` where possible.
* Don't use `unblock` unless the fiber was non-blocking.
Notes:
Merged-By: ioquatix <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3853
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3742
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3612
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3558
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3557
|
|
* Move #kernel_sleep next to #block as it is similar
|
|
* Enables Mutex to be used as synchronization between multiple Fibers
of the same Thread.
* With a Fiber scheduler we can yield to another Fiber on contended
Mutex#lock instead of blocking the entire thread.
* This also makes the behavior of Mutex consistent across CRuby, JRuby and TruffleRuby.
* [Feature #16792]
Notes:
Merged: https://github.com/ruby/ruby/pull/3434
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3434
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3434
|