yoogera 发表于 2010-10-28 21:20:50

ACE_Heap的效率问题

高手好
我现在程序中会生成大量的需要使用到定时器的对象,不知道ACE的定时器能承受多大的压力。
大概会有200个对象,每个对象最多的时候需要四个定时器。有人有使用过的经验吗?但是我今天里面只有一个对象,就发现cpu的利用率持续在50%,所以比较担心啊。

具体问题是这样的:
每个对象都有开始时间S和结束时间E,而在开始时间S到达后,有会有一个时间段T:
   在T开始的时候要以周期T1做事件A,然后以T2为后期做事件B,当T时间段结束的时候将T1和T2 都取消,同时又要确定下一个时间段开始后又周期性的做A和B,
等到达整个结束时间E的时候,整个对象才算结束。

请问有比较好的办法吗?我现在是使用定时器来实现的,如果效率上满足不了要求的话,我就考虑直接建一个线程,然后每分钟醒来一次,然后看到底该做什么了~~~

yoogera 发表于 2010-10-29 18:13:08

不好意思,上面说错了,那个cpu使用率过高的问题是另一个地方,我在使用ACE_Semphore的acequire的时候,使用了相对时间,所以相当于没等待啊。

另外我今天测试了一下,一共100个对象,每个对象4个定时器,cpu利用率基本上还是0,ACE的定时器的效率应该没问题啦~~

modern 发表于 2010-11-1 11:47:18

本帖最后由 modern 于 2010-11-1 11:48 编辑

印象里以前测试过,10k级别数量的定时器,使用默认实现,
每个定时器,每秒触发向一个远程主机TCP连接发送1k的数据包能跑的动,
同时CPU负载也会有一定增加。楼主说的量级应该没问题。
页: [1]
查看完整版本: ACE_Heap的效率问题