Sha256: 6bbbb0919222454c7f963c5cdd329ef1262f5315abe20237d03467273c609f7d
Contents?: true
Size: 830 Bytes
Versions: 1
Compression:
Stored size: 830 Bytes
Contents
$: << File.dirname(__FILE__) + '/../lib' require 'em-whois' require 'whois-parser' # Asynchronous, parallel multi-domain WHOIS lookup domains = ARGV.empty? ? ["github.com", "google.com", "bing.com", "yahoo.com", "mikejarema.com"] : ARGV whois = {} EM.synchrony do # Progress indicator EM.add_periodic_timer(0.1) do STDERR.print "." end # Exit condition EM.add_periodic_timer(0.1) do if domains.size == whois.keys.size puts "" whois.each do |k,v| if v.parser.available? puts "#{k}: available" else puts "#{k}: taken, expires #{v.parser.expires_on}" end end EM.stop end end # Async WHOIS lookup - fire and forget via parallel fibers domains.each do |i| Fiber.new do whois[i] = Whois.whois(i) end.resume end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
em-whois-0.4.0 | examples/async_parallel_whois.rb |