<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/thread, branch ruby_2_0_0</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) 44595: [Backport #9342]</title>
<updated>2014-02-09T16:07:41+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-02-09T16:07:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=08e1428b7bf2baaa9fefeacfaef518dc75cc9c64'/>
<id>08e1428b7bf2baaa9fefeacfaef518dc75cc9c64</id>
<content type='text'>
	* ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS
	  on SizedQueue#clear. [ruby-core:59462] [Bug #9342]

	* test/thread/test_queue.rb: add test. the patch is from
	  Justin Collins.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS
	  on SizedQueue#clear. [ruby-core:59462] [Bug #9342]

	* test/thread/test_queue.rb: add test. the patch is from
	  Justin Collins.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@44899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 42867: [Backport #8873]</title>
<updated>2013-09-11T15:27:13+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-09-11T15:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=089106508261787f7b43840b0249a1f9e1fea9a0'/>
<id>089106508261787f7b43840b0249a1f9e1fea9a0</id>
<content type='text'>
	* variable.c (classname): the name of class that has
	  non class id should not be nil. This bug was introduced
	  in r36577.

	* test/thread/test_cv.rb: test for change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@42911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* variable.c (classname): the name of class that has
	  non class id should not be nil. This bug was introduced
	  in r36577.

	* test/thread/test_cv.rb: test for change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@42911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 39688: [Backport #8065]</title>
<updated>2013-03-11T15:57:50+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-03-11T15:57:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=91e371802fd324168a4e486d8eb862e608a70d29'/>
<id>91e371802fd324168a4e486d8eb862e608a70d29</id>
<content type='text'>
	* test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce
	  iterations from 2000 to 250. When running on uniprocessor
	  systems, every th.kill needs TIME_QUANTUM_USEC time (i.e.
	  100msec on posix systems). Because, "r.read 1" is 3 steps
	  operations that 1) release GVL 2) read 3) acquire gvl and
	  (1) invoke context switch to main thread. and then, main
	  thread's th.kill resume (1), but not (2). Thus read interrupt
	  need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec
	  = 300.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@39728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce
	  iterations from 2000 to 250. When running on uniprocessor
	  systems, every th.kill needs TIME_QUANTUM_USEC time (i.e.
	  100msec on posix systems). Because, "r.read 1" is 3 steps
	  operations that 1) release GVL 2) read 3) acquire gvl and
	  (1) invoke context switch to main thread. and then, main
	  thread's th.kill resume (1), but not (2). Thus read interrupt
	  need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec
	  = 300.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@39728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* test/ruby/test_thread.rb: move ConditionVariable related test</title>
<updated>2012-12-01T08:29:09+00:00</updated>
<author>
<name>kosaki</name>
<email>kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-12-01T08:29:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=89ff44e22e737b1138954e482602c5f2ef9d08f1'/>
<id>89ff44e22e737b1138954e482602c5f2ef9d08f1</id>
<content type='text'>
  into test/thread/test_cv.rb.
* test/thread/test_cv.rb: new file.
* test/thread/test_cv.rb (test_condvar_empty_signal): new tests.
* test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  into test/thread/test_cv.rb.
* test/thread/test_cv.rb: new file.
* test/thread/test_cv.rb (test_condvar_empty_signal): new tests.
* test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* lib/thread.rb (ConditionVariable): use hash instead of array for</title>
<updated>2012-12-01T08:28:44+00:00</updated>
<author>
<name>kosaki</name>
<email>kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-12-01T08:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1f1db611b9860291454f38459f2aed33e0877d84'/>
<id>1f1db611b9860291454f38459f2aed33e0877d84</id>
<content type='text'>
  @waiters.
* test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove
  a test because @waiters no longer have a chance to duplicated. Now it's
  a hash.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  @waiters.
* test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove
  a test because @waiters no longer have a chance to duplicated. Now it's
  a hash.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* lib/thread.rb (SizedQueue#pop): rewrite by using ConditionVariable.</title>
<updated>2012-11-30T18:55:09+00:00</updated>
<author>
<name>kosaki</name>
<email>kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-11-30T18:55:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3357d88ada8ad44ecf267f5f2a1fb1df4e5cb8f4'/>
<id>3357d88ada8ad44ecf267f5f2a1fb1df4e5cb8f4</id>
<content type='text'>
* lib/thread.rb (SizedQueue#push): ditto.
* lib/thread.rb (SizedQueue#max): ditto.
* lib/thread.rb (Queue#pop): ditto.
* lib/thread.rb (Queue#push): ditto.

* lib/thread.rb (SizedQueue#num_waiting): adopt the above changes.
* lib/thread.rb (SizedQueue#initialize): ditto.
* lib/thread.rb (Queue#num_waiting): ditto.
* lib/thread.rb (Queue#initialize): ditto.
* test/thread/test_queue.rb (test_sized_queue_and_wakeup): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lib/thread.rb (SizedQueue#push): ditto.
* lib/thread.rb (SizedQueue#max): ditto.
* lib/thread.rb (Queue#pop): ditto.
* lib/thread.rb (Queue#push): ditto.

* lib/thread.rb (SizedQueue#num_waiting): adopt the above changes.
* lib/thread.rb (SizedQueue#initialize): ditto.
* lib/thread.rb (Queue#num_waiting): ditto.
* lib/thread.rb (Queue#initialize): ditto.
* test/thread/test_queue.rb (test_sized_queue_and_wakeup): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>envutil.rb: kill child process when timeout</title>
<updated>2012-09-29T11:19:11+00:00</updated>
<author>
<name>shirosaki</name>
<email>shirosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-09-29T11:19:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4d4800a5a7b078f34b86654b40321e498d50714e'/>
<id>4d4800a5a7b078f34b86654b40321e498d50714e</id>
<content type='text'>
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process
  before Timeout::Error is raised. rmdir of mktmpdir fails with
  EACCES if child process is alive on Windows.

* test/thread/test_queue.rb (TestQueue): increase timeout.
  This test takes long time on Windows XP.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process
  before Timeout::Error is raised. rmdir of mktmpdir fails with
  EACCES if child process is alive on Windows.

* test/thread/test_queue.rb (TestQueue): increase timeout.
  This test takes long time on Windows XP.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* lib/thread.rb (Queue#pop): Fixed double registration issue when</title>
<updated>2012-09-09T12:32:33+00:00</updated>
<author>
<name>kosaki</name>
<email>kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-09-09T12:32:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7198053a49d39a5c80551fc9147b9c0ab21e75a2'/>
<id>7198053a49d39a5c80551fc9147b9c0ab21e75a2</id>
<content type='text'>
  mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448]
* lib/thread.rb (SizedQueue#push): ditto.

* test/thread/test_queue.rb (test_sized_queue_and_wakeup,
test_queue_pop_interrupt, test_sized_queue_pop_interrupt,
test_sized_queue_push_interrupt): new tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448]
* lib/thread.rb (SizedQueue#push): ditto.

* test/thread/test_queue.rb (test_sized_queue_and_wakeup,
test_queue_pop_interrupt, test_sized_queue_pop_interrupt,
test_sized_queue_push_interrupt): new tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* lib/sync.rb (Sync_m#sync_lock): Fixed wakeup/raise unsafe code.</title>
<updated>2012-09-09T11:34:47+00:00</updated>
<author>
<name>kosaki</name>
<email>kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2012-09-09T11:34:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2248a8ce643509577dd29988f5ea1e662f4aaa65'/>
<id>2248a8ce643509577dd29988f5ea1e662f4aaa65</id>
<content type='text'>
  Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521]

* test/thread/test_sync.rb (test_sync_lock_and_wakeup,
  test_sync_upgrade_and_wakeup, test_sync_lock_and_raise):
  new test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521]

* test/thread/test_sync.rb (test_sync_lock_and_wakeup,
  test_sync_upgrade_and_wakeup, test_sync_lock_and_raise):
  new test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>refine message for test_thr_kill.</title>
<updated>2011-12-23T07:55:39+00:00</updated>
<author>
<name>akr</name>
<email>akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2011-12-23T07:55:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=dc42e8bbe89fe194805a1371276edaf83ec069c2'/>
<id>dc42e8bbe89fe194805a1371276edaf83ec069c2</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
</feed>
