1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* cont.c (cont_new): add debug message.

* cont.c (cont_restore_1): copy stack information from fiber.
* cont.c (rb_fiber_s_new): fix to mark created fiber.
* test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
* yarvcore.c (thread_free): fix to skip freeing stack if root fiber
  is available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ko1 2007-06-06 18:19:42 +00:00
parent ed88975237
commit d80e7373cf
4 changed files with 48 additions and 3 deletions

View file

@ -40,6 +40,23 @@ class TestFiber < Test::Unit::TestCase
)
end
def test_many_fibers_with_threads
max = 1000
@cnt = 0
(1..100).map{|ti|
Thread.new{
max.times{|i|
Fiber.new{
@cnt += 1
}.yield
}
}
}.each{|t|
t.join
}
assert_equal(:ok, :ok)
end
def test_error
assert_raise(ArgumentError){
Fiber.new # Fiber without block