通过知道ThreadName来设置线程的优先级

时间:2013-04-25 06:41:48

标签: c windows-ce real-time thread-priority

我正在为Win CE开发一个rt驱动程序,为了达到我的目的,我需要能够改变一个线程的优先级。但问题是,由于微软,我没有特别的源代码!因此,我无法在创建它的位置设置线程的优先级。

目前我所知道的是我从Visual Sudio的线程窗口中读取的线程(threadname)的名称。 (pThread,hThread值总是改变,因此我不能使用它们。只有静态的东西是threadname。)我可以通过只知道它的名字给线程赋值吗? (我可以通过知道它的名称来找到它的唯一线程ID吗?)我检查了线程的内置函数,存在一个GetCurrentThread函数,它检索调用线程的伪句柄。但是,它不适合我。因为将来我不能确定当前的线程是我想要的。因此,我可以设置不同的线程优先级。

总结:有没有办法通过只知道其线程名来设置线程的优先级?

此致

Xentius

2 个答案:

答案 0 :(得分:1)

似乎你不能用名称来猜测线程ID,但你可以尝试使用CreateToolhelp32Snapshot函数,你可以列出所有线程或进程,如果你知道进程名称就可以猜出processid,然后您可以尝试匹配属于此进程的线程。 祝你好运!

答案 1 :(得分:0)

根据this question and its answers,线程名称实际上并不存在于调试器之外。