请问定时器如何并行执行呢?

javascript

假如有100个定时器,怎么样才能各自执行各自的任务,而不是按顺序来执行?谢谢

3209 1 0
1个回答

maq

那你可能需要开 100 个进程了……Workerman 是单进程单线程模式的。

其实本质上还是要看你那些【任务】是属于 IO 密集型还是 CPU 密集型,如果是前者的话,单个进程足以应付。如果是后者的话,是应当考虑用多进程来分担的,当然,“开 100 个进程”可能太简单粗暴了,可以考虑用进程池来处理。

  • javascript 2018-05-06

    谢谢,我主要目的是处理游戏房间的倒计时,房间都存在REDIS应该属于IO密集型,感觉如果太多房间,每一秒返回客户端时间会卡顿,不顺畅,有什么好建议吗?感激不尽

  • maq 2018-05-06

    不太清楚你说的【游戏房间的倒计时】具体是怎样的应用逻辑,不好给出什么建议。

    有一点需要提醒你,也许对你的设计思路有影响:redis 对所有的请求都是串行执行的,因为 redis server 是单线程的。

  • javascript 2018-05-06

    @3346:好的,感谢提醒,游戏房间的倒计时 比如等待玩家准备,这时候服务器需要倒计时时间,这样子。

年代过于久远,无法发表回答
×
🔝