在我的情况下,我有一个游戏服务器,CLR线程池处理套接字,以及其他东西的托管线程池。我正在试图找出处理事件的最佳方法,例如,施放咒语的npc,或者在设定的时间段之后的堕落。
我可以编写某种Timer包装器,为我想要执行的每个操作获取一个新的(托管)线程池线程,比如新的TimedEvent(1500,npc.Cast(Spells.FireBall));并且检查系统时间,但是,我认为,对于这样的多个计时器,每个单独检查经过的时间都是低效的。 某种调度员线程会更好吗?
提前致谢。
答案 0 :(得分:0)
如果您不知道该服务器应用,请查看UOX3如何做到这一点。这是一个.Net / C#Ultima在线服务器。
并提出具体问题。这取决于您期望的事件数量。如果你期望每秒有数千个,那么定时器/线程的方式可能不会很好。