кажется, что threads.blockingCallFromThread
продолжает блокироваться, даже когда реактор останавливается. есть ли способ разблокировать его? отложенный, который он блокирует, зависит от RPC, поступающего с другого конца, и он определенно не придет, когда реактор остановлен.
скрученный, разблокировать threads.blockingCallFromThread при остановке реактора
Ответы (1)
Он блокируется до тех пор, пока не сработает Deferred. Если вы хотите, чтобы он разблокировался, запустите Deferred. Если вы останавливаете свое приложение и останавливаете реактор, вы можете запустить Deferred перед тем, как это сделать. Вы, вероятно, захотите запустить его с помощью Failure
, так как, по-видимому, вы не смогли добиться успешного результата. Вы можете установить перехватчики остановки реактора для запуска кода, когда реактор вот-вот остановится, используя либо Service
, либо reactor.addSystemEventTrigger
.
person
Jean-Paul Calderone
schedule
22.07.2010
ах, это имеет смысл. когда я создаю отложенный, я могу добавить событие, чтобы он не работал до завершения работы. кажется, что это должно быть где-то по умолчанию..
- person Claudiu; 23.07.2010