おおいしつかさ


旅行とバイクとドライブと料理と宇宙が好き。
Ubie Discoveryのプログラマ。
Share:  このエントリーをはてなブックマークに追加

スレッドの続き、子プロセスも

昨日の続き。更新ping全体ではなく、ひとつひとつのXML-RPCをスレッドにしてみました。

    thread_list = Array.new  
    ping_uris.each do |ping_uri|  
      uri = URI.parse(ping_uri)  
      thread_list << Thread.new(uri) do |u|  
          connection = XMLRPC::Client.new(u.host, u.path, u.port)  
          connection.call('weblogUpdates.ping', name, url)  
       end  
    end  
    thread_list.each {|t| t.join}  

うーん、これならたしかに並列処理できるけど、結局は待たなきゃいけないんだな。更新ping処理全体を子プロセスとかにしたほうがいいかも。