In one of my classes, we used Ruby and Gtk, but some issues popped up. The most obvious is using a block to do GUI update stuff and the like, from another thread. Things die. Puppies are killed. I found this post on Ruby Forum which fixed the problem. Relevant code. Basically, you call the Gtk.init_thread_protect method first when you start things up, then, whenever you need to do GUI update stuff, just wrap it in a Gtk.thread_protect {} block...
Verbose Logging
software development with some really amazing hairCompiling ruby-gnome from scratch
If you go download the ruby-gnome stuff, and GTK fails to compile, it’s easy to fix. It whines about some defines, and you can just comment out the block that’s causing the problem.
Read the full article
Tags
(show all tags).net activerecord adam-wiggins addin adobe adobe-air ajax aman-gupta amazon amd64 antec apache apple appliance apt-runner aptitude aslr asm asus backup balsamiq bioware blake-mizerany blip.tv blog blogger borland bugtrap bundler c cellular charity chrome chromium cloud code-metrics code-project command-line compare-and-swap concurrency conference cookies corsair cpp crypto csharp css3 cucumber darkhax das-keyboard database date datetime ddr debugging dell dep devexpress digg dns dragon-age-origins dreadlocks ea ec2 eclipse editor einstein-at-home emacs email evan-phoenix fail feedburner feedzirra filter-branch firefox fml font funny gcc gdg gdgt generator git github gmail gnome go google gtd gtk gui guitar-hero hadoop hair helvetica heroku hiphop hosting hpricot html html5 ide ideapaint inheritance intel interaction interface-design ipad iphone ironruby jaml jaunty java javascript jeff-atwood job-for-a-cowboy joe-damato joel-spolsky john-gruber jquery kindle latex linus-torvalds linux livejournal llvm logitech loren-segal mac-osx-server maglev mail map-reduce markitup matrikon memcached michael-braude middleware mock mongodb monotouch mozilla multitask mysql nokogiri notepad nth-child nvidia oop openid optimization oracle parus passenger password patriot patterns permissions php pig posterous printing python race-condition rack rack-gist rails railsconf rake regex rockstar role_on rss rubinius ruby rubygems.org rxvt s3 samo-korosec scm scott-hanselman scribes sdk security selenium serverfault sharepoint sidetrack sinatra sinatra-bundles skitch sla sli slideshare smtp source-control sqlite squirrel-mail ssh ssl stackoverflow star-wars stub style surl swfobject syntax-hightlight techradar termcap testing thoughtbot threading tools-of-the-trade tr.im tracks tumblr turnkey tutorial twitter twtpoll typepad ubiquity ubuntu ufw uncle-bob-martin uptime varnish video vimeo virtualization visual-studio wave web whiteboard who-cares windows wordpress worth-watching wtf xbox xkcd xml yahoo-pipes yehuda-katz youtube zed-shaw