diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-09-26 03:49:14 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-09-26 03:49:14 +0000 |
commit | 4a9ce0319f6e0250c4a8e01284fd5684936bde21 (patch) | |
tree | ac30d2a83c23a6779c14d7add596f31d1772c3d1 | |
parent | 96dad9948d3a7b181d50a9fcb35320677edc352b (diff) | |
download | sleepy_penguin-4a9ce0319f6e0250c4a8e01284fd5684936bde21.tar.gz |
This can potentially be very powerful under 1.9 with native threads
-rw-r--r-- | test/test_epoll.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/test_epoll.rb b/test/test_epoll.rb index 50daf3e..c6a11ed 100644 --- a/test/test_epoll.rb +++ b/test/test_epoll.rb @@ -13,6 +13,16 @@ class TestEpoll < Test::Unit::TestCase @ep = Epoll.new end + def test_cross_thread + tmp = [] + Thread.new { sleep 0.100; @ep.add(@wr, Epoll::OUT) } + t0 = Time.now + @ep.wait { |flags,obj| tmp << [ flags, obj ] } + elapsed = Time.now - t0 + assert elapsed >= 0.100 + assert_equal [[Epoll::OUT, @wr]], tmp + end + def test_fork_safe tmp = [] @ep.add @rd, Epoll::IN |