2009-11-11 40 views
4

有什麼方法可以在Qt 4.3中使用線程池?我知道它現在已經在Qt 4.5中實現了。但是它在Qt 4.3中也有某種程度的可用性嗎?Qt 4.3中的線程池

回答

5

Qt Labs項目獲取第一個版本的QtConcurrent。這個版本的QtConcurrent與Qt4.2兼容,但推薦使用4.3。

從Qt的實驗室...
Qt Concurrent

平臺:Windows,Linux和Mac的Qt的
版本:4.2需要,4.3 建議。

Qt Concurrent是一個用於編寫 多線程應用程序的C++ 模板庫。
Qt的 並行提供高級API ,使得它可以編寫 多線程程序withouth的使用 低級線程的原語,如 critcal段,互斥或等待 條件。
用Qt編寫的程序 併發自動調整 根據 使用的線程數可用的處理器核心數 。這意味着今日編寫的應用程序 將在未來部署在 多核系統上時繼續擴展。

該 庫包括在GUI應用程序管理異步計算 用於 並行列表prosessing,MapReduce的 實施共享存儲器 (非分佈式)官能 編程風格的API系統,和類 。

代碼可以是 檢查了顛覆:SVN 結帳 的svn://labs.trolltech.com/svn/threads/qtconcurrent qtconcurrent
如果你沒有SVN, 可以download a package來代替。

0

您可以隨時在C/C++中直接使用pthreads API和QT,並實現您自己的線程池。

雖然您可能正在尋找一種涉及工作量較少的解決方案。

+1

我已經在我的代碼中實現了一個線程池。我想知道,如果Qt有它的東西。 – Ajay 2009-11-11 16:31:57

2

你可以得到4.5源代碼並從那裏撕掉。如果他們使用自己的API,它應該很容易。