stdthread

    1熱度

    3回答

    我要調用的方法(在這個例子中的std ::線程構造函數) 與拉姆達函數,傳遞int值: int a=10; std::thread _testThread = thread([a](int _a){ //do stuff using a or _a ? }); _testThread.detach(); 我不知道如何正確地寫這樣的功能,我得到這個錯誤: C2064:術語不評估

    77熱度

    3回答

    有時我不得不使用std::thread加快我的申請。我也知道join()等待,直到一個線程完成。這是很容易理解的,但什麼叫detach()而不是調用它的區別? 我認爲沒有detach(),該線程的方法將獨立工作,使用一個線程。 不分離: void Someclass::Somefunction() { //... std::thread t([ ] { print

    6熱度

    1回答

    可以說我有以下類 class A { public: A() { my_thread=std::thread(std::bind(&A::foo, this)); } ~A() { if (my_thread.joinable()) { my_thread.join(); }

    4熱度

    3回答

    創建的shared_ptr 的一個實例,考慮下面的代碼: class A { .... shared_ptr<std::thread> mThread; void Step(); void LaunchTrhead(); } void A::LaunchThread() { ... mThread=make_shared<std

    0熱度

    3回答

    我想創建線程出模板函數給線程另一個模板函數。 我附加了一個給出相同錯誤的情況的expample。給線程一個非模板化的函數(即這裏有一個帶有int,另一個帶有float)不會導致錯誤。 但是,因爲我打算使用這個函數與許多不同的類型,我不想指定模板類型。此外,我嘗試了幾種模板類型的指定(例如std::thread<T>或std::thread(function<T>),但沒有取得任何成功。 問題:如何

    1熱度

    1回答

    我想一個向量發送到另一個線程的功能參數: void foo(){} const int n = 24; void Thread_Joiner(std::vector<thread>& t,int threadNumber) { //some code } int main() { std::vector<thread> threads(n, thread(foo))

    3熱度

    1回答

    我有一個程序正在分析一些文件(最多10000個)。 平臺是帶有unix操作系統的AMD64。語言是C++。 該程序目前正在爲每個文件分配主進程(直到達到限制,然後等待,直到孩子完成)。 孩子正在啓動boost :: thread來執行分析功能,然後在它創建的boost :: thread上執行boost :: timed_join。 所以,我現在有一些問題。 用一個更輕量級的選項替換叉是否合理?我

    6熱度

    1回答

    有幾種方法可以實現多線程。最終由C++ 11標準帶來了std::thread,但boost::thread可以被有效地使用。每種技術都有特定的語法和內容,但大致用於CPU並行編程。但他們有不同的效果。例如,我知道MPI和OpenMP用於不同的內存模型。 我也知道,技術的選擇實際上並不是專有的,所以可以使用另一種技術(MPI和OpenMP)。他們如何用於不同的效果,但仍然使用相同的源(CPU)? 如

    2熱度

    1回答

    我正在將多線程中值函數作爲大型項目的一部分工作。我有一點C++經驗。下面的中值函數應該採用3維向量的向量,並返回一個3維向量,其中每個條目是輸入向量中該索引中所有條目的中值。所以如果輸入是< < 3,2,1>,< 1,2,3>,< 2,2,2 >>,則返回< 2,2,2>。該代碼將用於實現實時視頻中的中值模糊,因此希望對其進行多線程處理。 #include <thread> #include <

    1熱度

    1回答

    我正在試驗C++標準線程。我寫了一個小的基準來測試性能開銷和整體吞吐量。它的原理是在一個或幾個線程中運行10億次循環的循環,從而不時地暫停。 在第一個版本中,我在共享內存中使用了計數器(即正常變量)。我exepected以下的輸出: Sequential 1e+009 loops 4703 ms 212630 loops/ms 2 thrds:t1 1e+009 loops 4734 ms