I think, your script is missing Thread::join: > domains = ['www.bim.com','www.bum.com','www.bam.com'] > .. > def check (host,domain,timeout) > puts "checking... #{host} -> #{domain}" > timeout(timeout) do > ¨Âåçéî > `/usr/bin/nslookup #{domain} #{host}` > ¨ÂåóãõÔéíåïõôººÅòòïò > ¨Âîä > end > end > > iplist.each { |host| > ¨Âèòåáäó ¼¼ Ôèòåáä®îå÷¨èïóô© üèïóôü > domains.each do |domain| > ¨Âèåãë¨èïóô¬äïíáéî¬ôéíåïõô> end > ¨Â> threads.each {|th| th.join } (Not tested.) -Axel