子進(jìn)程是一個(gè)阻塞調(diào)用,而且是不能修改的,那怎么在信號(hào)到來(lái)的時(shí)候分發(fā)信號(hào)啊
大部分系統(tǒng)調(diào)用都是阻塞的,進(jìn)程在收到信號(hào)以后信號(hào)會(huì)中斷系統(tǒng)調(diào)用, 通過(guò) pcntl_signal_dispatch 來(lái)檢測(cè)信號(hào)并分發(fā)信號(hào)。
我的阻塞并不是系統(tǒng)調(diào)用,而是rabbitmq的消費(fèi)者的阻塞消費(fèi)方法,用的擴(kuò)展是amqp,現(xiàn)在我想使用信號(hào)平滑關(guān)閉它
沒(méi)有什么關(guān)系吧,你這里的阻塞也只是業(yè)務(wù)同步阻塞等待消費(fèi),屬于業(yè)務(wù)范疇呢,信號(hào)和進(jìn)程屬于系統(tǒng)級(jí)別,信號(hào)來(lái)了,注冊(cè)平滑信號(hào)以及處理函數(shù),然后檢測(cè)信號(hào)觸發(fā)信號(hào)處理函數(shù)關(guān)閉進(jìn)程就可以了啊。