<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/fiber/test_sleep.rb, branch v4.0.4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Increase fiber sleep test tolerance. (#13152)</title>
<updated>2025-04-23T01:17:15+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2025-04-23T01:17:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c1dbd01c6796adb64edc6136134be8271b933bb8'/>
<id>c1dbd01c6796adb64edc6136134be8271b933bb8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Close leaked file descriptors</title>
<updated>2021-06-14T15:02:15+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2021-06-14T15:02:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=57eaa07ba6c1ee958c16d5c451e2dceb2208edf1'/>
<id>57eaa07ba6c1ee958c16d5c451e2dceb2208edf1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Wake up join list within thread EC context. (#4471)</title>
<updated>2021-06-14T05:56:53+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2021-06-14T05:56:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=050a89543952a2c9e7c9bc938f4fdb538f6c9278'/>
<id>050a89543952a2c9e7c9bc938f4fdb538f6c9278</id>
<content type='text'>
* 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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 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.</pre>
</div>
</content>
</entry>
<entry>
<title>Rename to `Fiber#set_scheduler`.</title>
<updated>2020-11-07T10:39:50+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2020-10-16T01:25:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a08ee8330d3d739467bfa34deeb797d83e59ed3c'/>
<id>a08ee8330d3d739467bfa34deeb797d83e59ed3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename `Fiber{}` to `Fiber.schedule{}`.</title>
<updated>2020-09-14T04:44:09+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2020-08-20T12:52:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=132453fa521cf87693035769031f3501ddc02f4a'/>
<id>132453fa521cf87693035769031f3501ddc02f4a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Standardised scheduler interface.</title>
<updated>2020-09-14T04:44:09+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2020-08-20T01:51:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d387029f39d976565c955377117103499d47ff09'/>
<id>d387029f39d976565c955377117103499d47ff09</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Improved assertions</title>
<updated>2020-06-09T12:42:25+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2020-06-09T12:42:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=101d56ddca818cad0e3ebe95e5e080fcac957b1b'/>
<id>101d56ddca818cad0e3ebe95e5e080fcac957b1b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Return seconds slept after Thread.scheduler wait_sleep</title>
<updated>2020-06-09T09:57:17+00:00</updated>
<author>
<name>nicholas a. evans</name>
<email>nicholas.evans@gmail.com</email>
</author>
<published>2020-06-09T04:30:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b6bae0ec4433bcea6ba94a50de344c2e3b90fee9'/>
<id>b6bae0ec4433bcea6ba94a50de344c2e3b90fee9</id>
<content type='text'>
Kernel#sleep should still return seconds slept, even when using a
Thread.scheduler. The return value of Scheduler#wait_sleep can be
ignored.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Kernel#sleep should still return seconds slept, even when using a
Thread.scheduler. The return value of Scheduler#wait_sleep can be
ignored.
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename TestScheduler* to TestFiber for convention of the test directory</title>
<updated>2020-05-23T07:44:57+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2020-05-23T07:43:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d48c92aa04ffd3a1cecef599eaa5e4409aab2fe4'/>
<id>d48c92aa04ffd3a1cecef599eaa5e4409aab2fe4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Move `test/scheduler` -&gt; `test/fiber` [Bug #16892][ruby-core:98366].</title>
<updated>2020-05-15T01:26:23+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2020-05-15T00:23:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6fa8455ebbf457e5d8752295a8d6380146636c0c'/>
<id>6fa8455ebbf457e5d8752295a8d6380146636c0c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
