stdthread

    2熱度

    2回答

    我有一堆並行任務要完成,但只有一些工作線程(說8,但我希望這是可配置的)。 因此,只要隊列中有任務,就有8個線程運行,並且每個線程都會從隊列中彈出下一個任務。 C++ 11是否提供了任何內置的構造來幫助實現這種設計? 我看到一些與std::async有關的類似討論,但是我認爲這對編譯器的實現有很大的影響。

    2熱度

    1回答

    簡單的命名約定可以幫助處理複雜的任務和調試大型程序。 是否有可能有一個更好的命名約定比 0x115f57000 0x115fda000 0x11605d000 0x1160e0000 對於扔到線程ID 0x1035a8000例如例外!可能沒有多大幫助。它也不能幫助每次程序運行時線程ID都會改變。

    7熱度

    3回答

    在下面的代碼片段中的一員, void foo() { std::this_thread::native_handle().... //error here } int main() { std::thread t1(foo); t1.join(); return 0; } 如何從功能foo內得到std::this_thread的native_h

    10熱度

    1回答

    考慮我的測試代碼: #include <thread> class Foo { public: void threadFunc() {} void startThread() { _th = std::thread(&Foo::threadFunc, *this); } private: std::thread _th; }; in

    2熱度

    2回答

    我編寫了一個小型C++程序,試圖瞭解多線程如何使用std::thread工作。這裏是我的程序執行的步驟: 初始化一個5×5整數矩陣,其中包含'Toto'類(初始化爲主)中包含的唯一值'42'。 我打印初始化的5x5矩陣。 聲明:std::vector共5線程。 我附加所有線程分別與他們的任務(threadTask方法)。每個線程將操縱一個std::vector<int>實例。 我加入所有主題。 我

    11熱度

    3回答

    我的目標是保留一個std::thread對象作爲數據成員,並在需要時對其進行初始化。 因爲std::thread類的複製構造函數被刪除,所以我無法做到這一點(如下面的代碼所示)。有沒有其他方法可以做到這一點? class MyClass { public: MyClass():DiskJobThread(){}; ~MyClass(); void

    1熱度

    1回答

    我們正在構建一個Java /本機庫,它在本機(主要使用C++ 11編寫)和Java開發人員界面中進行網絡和視頻圖像處理。 問題是整個事情在jni調用中經常卡住。 我們使用最新的ndk-r8e,並有多個線程在本地運行,使用std :: thread創建。 任何想法是值得歡迎的。

    1熱度

    1回答

    我正在考慮在分離線程創建線程並在運行下一個線程之前等待join()從主線程創建std::thread,detach()的可能性。 但我不這樣做是可能的,因爲我總是在第一個線程之後但在下一個之前崩潰。 的Someplace在代碼: std::thread t1(&B::start, this); //Launch a thread t1.detach(); 內部B::start: std::t

    1熱度

    3回答

    我需要根據需要創建一些線程,因爲我不前我是多麼需要知道的。 要「存儲」線程即時通訊使用矢量std::vector<std::thread> threads; 每次我創建一個新的線程時間我把它們放回在載體:threads.push_back(std::thread(worker)); 存儲(用於測試)線程ID我用下面的:根據double test = std::hash<std::thread::i

    2熱度

    1回答

    void ThreadFn(int& i) { cout<<"Hi from thread "<<i<<endl; } int x = 0; void CreateThreads(vector<thread>& workers) { for(int i = 0; i< 10; i++) { workers.push_back(thread(&Th