天天看點

擷取程序和線程id函數簡介

C語言getpid函數簡介   函數功能:取得程序識别碼    相關函數:fork,kill,getpid    頭檔案:舊版本:unistd.h,在VC++6.0下可以用 process.h    函數原型:舊的原型為pid_t getpid(void);,推薦使用int _getpid( void );這種形式。注意, 函數名第一個字元是下劃線。    函數說明: getpid函數用來取得目前程序的程序識别碼,許多程式利用取到的此值來建立 臨時檔案,以避免臨時檔案相同帶來的問題。    傳回值:目前程序的程序 識别碼   fork – 建立新程序;exit – 終止程序;exec – 執行一個 應用程式wait – 将父程序挂起,等待子程序終止;getpid – 擷取目前程序的PID;nice – 改變程序的優先 編輯本段 程式示例    示例一:[1]   #include <stdio.h>   #include <process.h>   int main( void )   {      printf( "Process id: %d\n", _getpid() );   }    示例二:   #include<unistd.h>   main()   {   printf(“pid=%d\n”,getpid());   }    執行:   pid=1494     ===================================================== 擷取目前程序的ID很簡單,一種方法是調用GetCurrentThreadId()函數即可;還有一處更簡單的哈,就是在你建立程序的時候就知道了:如 m_hThread = ::CreateThread(NULL, 0, MyThreadProc, this, 0, &m_threadID);//最後一個參數就是線程ID 另外,你想出現的是交錯的順序也很簡單,就是做好互斥工作就是了,線上程的相應位置調用WaitForSingleObject();不要忘了解鎖即可,我是用SetEvent();最好後面加上Sleep(10);這樣看到的效果就更明顯了!   GetCurrentThreadId

函數狀态: 翻譯/整理完成 ,建設者:陣雨 ,最新更新時間: 2004-10-17 5:38:16 修改該函數

函數功能描述:該函數傳回目前線程的ID

函數原型 

DWORD GetCurrentThreadId(VOID)

參數

    該函數沒有參數

傳回值

    傳回值是目前線程的ID

備注[該處可以加上自己的使用經驗]

    線程ID是線程在系統全局範圍内的唯一标示。

使用環境[包括适合WINDOWS的版本、所需頭檔案、所需連結庫]

Windows NT: 要求3.1或更高版本

Windows: 要求windows 95或更高版本

Windows CE: 要求1.0或更高版本。

頭檔案 winbase.h.

庫檔案 kernel32.lib

示例代碼段

              char sztmp[256];

              DWORD dwThreadId=GetCurrentThreadId();

              wsprintf(sztmp,"目前線程ID為:%.8X",dwThreadId);

擷取程式和線程id函數簡介

繼續閱讀