[轉] 間接系統調用syscall(SYS_gettid)


      點擊閱讀原文     

      在linux下每一個進程都一個進程id,類型pid_t,可以由 getpid()獲取。

      POSIX線程也有線程id,類型pthread_t,可以由 pthread_self()獲取,線程id由線程庫維護。

      但是各個進程獨立,所以會有不同進程中線程號相同節的情況。那么這樣就會存在一個問題,我的進程p1中的線程pt1要與進程p2中的線程pt2通信怎么辦,進程id不可以,線程id又可能重復,所以這里會有一個真實的線程id唯一標識,tid。glibc沒有實現gettid的函數,所以我們可以通過linux下的系統調用 syscall(SYS_gettid) 來獲得。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM