iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 15
1
Software Development

C++ 30天屠龍記系列 第 15

C++ 30天屠龍記(第15天): 多線程與平行編程

  • 分享至 

  • xImage
  •  

這些都是PlaceholderC++11 Thread
雖然 OpenMP 已經有提供了 task parallelism 的功能,不過實際上它所提供的功能相當簡單、也不無法做進一步的控制,所以基本上應該也只能適用於較簡單的例子。而這邊 Heresy 要來介紹的,則是一個功能比較完整的 thread 控制的函示庫,那就是 C++11 的 STL 新加入的「Thread」(以下稱為「STL Thread」,官方文件、MSDN)!

不過,雖然 STL Thread 是 C++11 標準函式庫的一部分,但是要注意的是,由於 C++11 還算是一個很新的標準,並非所有編譯器都有支援;像是 Visual C++ 2010 就還不支援、要等到下一代的 Visual Studio 2012 才有支援。所以如果是要在 MSVC10 這種還不支援 STL Thread 的開發環境下使用的話,可以考慮使用 Boost C++ Libraries 所提供的 Thread 函式庫(官方文件),他基本上是和 STL Thread 相同的(最大的差異只在於 namespace)(gcc 4.6 對 STL thread 的支援性似乎也還不是很好)。


上一篇
C++ 30天屠龍記(第14天): C++異步式編程
下一篇
C++ 30天屠龍記(第16天): 小歇和後續規劃
系列文
C++ 30天屠龍記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言