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