diff --git a/test/socket/test_tcp.rb b/test/socket/test_tcp.rb index 8d55c011cf..a1657f027d 100644 --- a/test/socket/test_tcp.rb +++ b/test/socket/test_tcp.rb @@ -11,19 +11,13 @@ class TestTCPSocket < Test::Unit::TestCase svr = TCPServer.new("localhost", 0) Thread.new { c = svr.accept - Thread.pass until s + ObjectSpace.each_object(String) {|s| + s.replace "a" if s.length == 0x10000 and !s.frozen? + } c.print("x"*0x1000) } addr = svr.addr sock = TCPSocket.open(addr[2], addr[1]) - Thread.new { - Thread.pass until c - Thread.critical = true - ObjectSpace.each_object(String) {|s| - s.replace "a" if s.length == 0x10000 and !s.frozen? - } - Thread.critical = false - } assert_raise(RuntimeError, SocketError) { sock.recvfrom(0x10000) }