开发环境:
DM6446 EVM
DVSDK: dvsdk_1_30_01_41
两个算法:其中一个算法是是TI 提供的jpegenc,另外一个算法是用于识别算法,两个算法单独运行都没有问题。打算测试下两个算法同时运行的效果,
操作流程如下:
在ARM端的测试程序中创建两个不同优先级的线程,两个线程分别运行不同的算法。高优先级的线程运行jpegenc算法,低优先级的线程运行识别算法。
高优先级的线程先起,低优先级的算法后起。内核线程抢占是没有问题的
得到的结果是:
1.高优先级线程被低优先级线程打断. 个人觉得是因为高优先级线程中有非阻塞函数,所以可以被打断
2. 两个算法顺序执行。高优先级线程中的算法会等待低优先级中的算法运行结束后在执行,没有想到是什么原因导致的?
希望各位大神帮忙解答下,多谢!