AsyncTcpConnection连接怎么创建多线程处理任务?

rykj

问题描述

AsyncTcpConnection连接怎么创建多线程处理任务,有很多网上给的方案都会引发断线问题

为此你搜索到了哪些方案及不适用的原因

因为我是创建多个AsyncTcpConnection来通过不同的账号连接另一台服务器,经过尝试使用new Process()在其中一个AsyncTcpConnection连接触发的时候就会引起全部的AsyncTcpConnection断线。pcntl_fork()也是一样。现在是实在没办法了。因为具体的处理任务时因为功能需要无法避免的使用了sleep。所以会导致后来的消息无法收到只能尝试使用多线程

252 1 0
1个回答

walkor

workerman不支持多线程。一般业务也用不到多线程。
workerman里不能使用sleep,延迟用定时器。
workerman里不能使用pcntl_fork()。
workerman里也没有Process类

  • rykj 2024-08-08

    我就遇到了需要多线程的场景,我通过AsyncTcpConnection连接连接了两个服务器,当其中一个在处理for循环任务时另一个直接就收不到消息。目前我也没有任何替换方案。大佬有没有别的办法?例如使用别的类代替AsyncTcpConnection

  • walkor 2024-08-08

    你可以开两个进程,每个进程一个AsyncTcpConnection。
    或者使用队列处理任务。

×
🔝