Please send this to ruby-core@ On Jan 30, 2012, at 9:48, Grigory Petrov <grigory.v.p / gmail.com> wrote: > Ruby 1.9 suppose to have native threads, and GIL is supposed to lift > if some threads enters native code (like GUI toolkit main loop or C > implementation of some Ruby lib). But if i start following simple code > sample that displays GUI in main thread and do some basic math in > separate thread - the GUI will hang out badly and dragging window will > redraw ~ every 10 seconds or so :(. I have checked with different GUI > toolkit, Qt (qtbindings gem) - it behaves exactly same. Tested with > Ruby 1.9.3-p0 on Windows 7 and OSX 10.7 > > require 'tk' > require 'thread' > require 'rexml/document' > Thread.new { loop { a = 1 } } > TkRoot.new.mainloop() > > Same code in Python works fine without any GUI hangs: > > from Tkinter import * > from threading import * > class WorkThread( Thread ) : > def run( self ) : > while True : > a = 1 > WorkThread().start() > Tk().mainloop() > > What i'm doing wrong? >