[英]posix threads (pthreads) standard
它已被新版本(2008)取代。 它可以作為IEEE 1003.1-2008或ISO / IEC 9945-2009(足夠的錢)或The Open Group Single Unix Specification,版本7 (免費)獲得。 這三個都有相同的內容。
是的,那是一個非常舊的文檔。 您可能想要的是完整的POSIX 2008規范 。
由於您在問題中標記了Linux,因此我建議您除了Jerry Coffin回答的內容之外,還請查看Linux pthreads手冊頁 。 當前的Linux pthreads實現(NPTL)不完全符合POSIX。 有些小細節的處理方式有所不同。
還有一些擴展名,例如__thread
關鍵字(用於指定每個線程變量,比pthread_key_create()
簡單得多;在此為GCC進行了詳細說明)可在Linux和其他操作系統中使用,並且可能會包含在POSIX中。指向未來。
如果您對性能非常敏感,建議您還查看GCC,ICC和Pathscale編譯器中可用的原子內建函數和矢量擴展( GCC向量擴展 , 舊版__sync
內置 , C ++ 11樣式__atomic
內置和特定於x86的內建 )。 盡管這些還沒有標准化,但它們在上述編譯器中可用,並且除了最近的__atomic
內置__atomic
,它們已經可用了至少十年。 從個人經驗來看,我可以證明這些功能可以顯着提高性能(在我正在研究的經典分子動力學模擬器中,性能提高了約40%),同時仍可在非Windows系統和編譯器之間移植。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.