假设我有一个带有函数的类
class foo
{
...
void bar() {
OutputDebugString(........);
// mode code
}
}
是否可以打印正在使用OutputDebugString执行函数的当前线程(或者如果它是主应用程序)的 ID ?
我有一个正在调试的大型应用程序,并且发现了死锁情况,并想检查死锁中包含哪些线程。因为它可能是锁定它自己的关键部分的同一个线程。
假设我有一个带有函数的类
class foo
{
...
void bar() {
OutputDebugString(........);
// mode code
}
}
是否可以打印正在使用OutputDebugString执行函数的当前线程(或者如果它是主应用程序)的 ID ?
我有一个正在调试的大型应用程序,并且发现了死锁情况,并想检查死锁中包含哪些线程。因为它可能是锁定它自己的关键部分的同一个线程。
看看GetCurrentThread
功能。
请注意,线程不能在临界区自行死锁。一旦线程获得了关键部分的锁,它就可以根据需要释放重新进入相同的锁(与互斥锁相同)。只需确保为每个成功的锁定(重新)进入解锁关键部分,以便其他线程不会陷入死锁。