[ruby-cvs:71479] normal:r64387 (trunk): test/net/imap/test_imap.rb (test_exception_during_idle): kill infinite looper

normal at ruby-lang.org normal at ruby-lang.org
Thu Aug 16 12:37:14 JST 2018


normal	2018-08-16 12:37:14 +0900 (Thu, 16 Aug 2018)

  New Revision: 64387

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=64387

  Log:
    test/net/imap/test_imap.rb (test_exception_during_idle): kill infinite looper
    
    It is possible for Mutex#sleep (via ConditionVariable#wait)
    to prematurely wake up under MJIT (because Mutex#sleep can't
    handle spurious wakeups).  This affects @idle_done_cond in
    Net::IMAP#idle and means the response handler may never
    set `in_idle' to `true`.
    
    In any case, ensure the infinite looping `raiser' thread
    stops running when the test is done.
    
    Will work on reducing the effect of spurious wakeups from
    MJIT...

  Modified files:
    trunk/test/net/imap/test_imap.rb


More information about the ruby-cvs mailing list