簡體   English   中英

獲取在C ++ Builder中執行進程/線程的ID

[英]Get ID of executing Process/Thread in C++ Builder

假設我有一個帶有函數的類

class foo 
{
  ...

  void bar() {
    OutputDebugString(........);
     // mode code
  }
}

是否可以使用OutputDebugString打印執行該函數的當前線程(或如果它是主應用程序)的ID?

我有一個正在調試的大型應用程序,並且發現了死鎖情況,並且想檢查死鎖中包含哪些線程。 由於它可能是與鎖定該線程相同的線程,因此它是自己的關鍵部分。

看一下GetCurrentThread函數。

使用GetCurrentThreadId()

請注意,線程無法在關鍵節上自行死鎖。 一旦線程獲得了對關鍵部分的鎖定,它就可以釋放所需數量的重新輸入相同的鎖定(與互斥鎖相同)。 只需確保為每個成功的鎖定(重新)輸入解鎖關鍵部分,以免其他線程陷入死鎖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM