【问题标题】:Setting a Thread's Priority by knowing its ThreadName通过知道线程名称来设置线程的优先级
【发布时间】:2013-04-25 06:41:47
【问题描述】:

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

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

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

问候,

Xentius

【问题讨论】:

  • “pThread,hThread 值总是在变化,因此我不能使用它们。”。你上面那句话是什么意思。线程句柄是否经常更改?我认为这不会发生。但是对于不同的进程,线程句柄是不同的。

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


【解决方案1】:

貌似用名字猜不出Thread Id,但是你可以尝试使用CreateToolhelp32Snapshot函数列出所有线程或进程,如果知道进程名就可以猜出processid,然后您可以尝试匹配属于该进程的线程。 祝你好运!

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多