高分求教:四核多线程,为什么CPU占用最多只有25%
VS2005, C++开发,四核i7笔记本, WinXP SP3
程序一共3个线程:用户UI、消息接收和数据计算。在数据计算线程明显满负荷已经不能实时处理(显示延迟很明显)时,CPU占用率依然不超过25%。此时消息接收线程也有相当的处理负荷,如能多核应该超过25%才对。
消息接收和数据计算线程使用了信号量进行了同步,但用的很少且处理时间很短。
问题如下:
1. 单进程下的程序是否再多的线程也只能用一个CPU?如果能使用多核的话,该如何设置?
2. 信号量同步是否对CPU使用有影响?
欢迎答复,有答必给分。多谢了。