359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
|
# File 'lib/fairy/controller.rb', line 359
def create_processor(node, bjob, &block)
@create_processor_mutex.synchronize do
processor = node.create_processor
proc_id = processor.connect_controller(self, CONF)
@deepspace2processor_id[processor.deepspace] = proc_id
@reserves_mutex.synchronize do
@reserves[processor] = 1
end
begin
register_processor(bjob, processor)
yield processor
processor
ensure
@reserves_mutex.synchronize do
@reserves[processor] -= 1
end
end
end
end
|