在WinCE6.0或DMA实现中进行多次处理

时间:2011-04-11 08:45:40

标签: c++ window windows-ce

在我的应用程序中,我希望并行执行任务,就像一个线程将进行计算,而其他线程将在屏幕上绘制数据,但在绘制数据处理器时是gettign参与,在此期间它无法处理不同线程的数据。我在两个正常的priorty上运行两个线程。有什么方法可以平行地进行绘图,因此测量线程可以在不受绘图线程影响的情况下以该速度进行计算。我听说过一些DMA可以解决这个问题,但是如何在WINCE6.0平台上搞定它我不知道。

请提供任何指针

穆克什

1 个答案:

答案 0 :(得分:0)

不知道DMA如何“解决”这个问题 - 你使用的是单处理器内核,它一次只能执行一组指令。 DMA不会改变它。

您遇到的问题听起来就像是在大约满容量时使用处理器,因此您在线程之间没有多少时间共享。通常有两种方法可以解决这个问题。

1)adjust the priority您更重要的线程,让它从调度程序中获得更多时间来完成其工作。

2)adjust the thread quantum让你的线程强制调度程序更频繁地在线程之间交换。