У меня есть сценарий, который запускает службу DRb перед созданием объекта-обработчика и ожиданием через DRb .thread.join
. Я хотел бы, чтобы сценарий выполнялся до тех пор, пока его не убьют, поэтому я добавил
trap "INT" do
DRb.stop_service
end
, который успешно останавливает службу DRb и завершает работу в Ruby 1.8, но в версии 1.9 кажется, что он зашел в тупик (в OS X 10.6.7). Выборка процесса показывает пару потоков, вращающихся в semaphore_wait_signal_trap
.
Я предполагаю, что я делаю что-то не так, как я » m вызывает stop_service
, но я не уверен, что именно. Может ли кто-нибудь подсказать мне, как это правильно сделать?