AsyncTcpConnection連接怎么創(chuàng)建多線程處理任務(wù),有很多網(wǎng)上給的方案都會(huì)引發(fā)斷線問(wèn)題
因?yàn)槲沂莿?chuàng)建多個(gè)AsyncTcpConnection來(lái)通過(guò)不同的賬號(hào)連接另一臺(tái)服務(wù)器,經(jīng)過(guò)嘗試使用new Process()在其中一個(gè)AsyncTcpConnection連接觸發(fā)的時(shí)候就會(huì)引起全部的AsyncTcpConnection斷線。pcntl_fork()也是一樣?,F(xiàn)在是實(shí)在沒(méi)辦法了。因?yàn)榫唧w的處理任務(wù)時(shí)因?yàn)楣δ苄枰獰o(wú)法避免的使用了sleep。所以會(huì)導(dǎo)致后來(lái)的消息無(wú)法收到只能?chē)L試使用多線程
workerman不支持多線程。一般業(yè)務(wù)也用不到多線程。
workerman里不能使用sleep,延遲用定時(shí)器。
workerman里不能使用pcntl_fork()。
workerman里也沒(méi)有Process類
我就遇到了需要多線程的場(chǎng)景,我通過(guò)AsyncTcpConnection連接連接了兩個(gè)服務(wù)器,當(dāng)其中一個(gè)在處理for循環(huán)任務(wù)時(shí)另一個(gè)直接就收不到消息。目前我也沒(méi)有任何替換方案。大佬有沒(méi)有別的辦法?例如使用別的類代替AsyncTcpConnection
你可以開(kāi)兩個(gè)進(jìn)程,每個(gè)進(jìn)程一個(gè)AsyncTcpConnection。
或者使用隊(duì)列處理任務(wù)。