てるブログ
Subscribe
Tagged

Ruby

A collection of 1 post

Ruby

[Ruby] スレッド数固定で処理を行う

お仕事で、数百台のサーバに対して、多少時間のかかる処理をする必要があった。 1 つずつ実行していては、さすがに日が暮れてしまう。 そうなるとスレッドで並列実行したいが、対象のサーバの分、数百個スレッドを生成すると逆に重くなってしまう。 というわけで、スレッド数に上限を設けて実行した、という話。 雛形はこんな感じ。 #!/usr/bin/ruby -Ku # -*- coding: utf-8 -*- # # 20120619 # thread template # require 'thread' def job(arg) sleep rand(0) print "#{arg}\n" end def main # スレッド数上限 thread_max = 3 # キュー jobqueue = Queue.new

  • teru
teru Jun 19, 2012 • 1 min read
てるブログ © 2023
Powered by Ghost