stdasync

    5熱度

    1回答

    我已經寫了下面的代碼來測試std::async()函數返回void與Ubuntu上的GCC 4.8.2。 #include <future> #include <iostream> void functionTBC() { std::cerr << "Print here\n"; } int main(void) { #ifdef USE_ASYNC auto

    1熱度

    1回答

    我對C++ 11功能std::async頗爲陌生,我無法理解爲什麼下面的代碼從不打印bar。 難道有人能爲我揭開一些啓示嗎?此頁面上 class Thready { public: Thready() { std::async(std::launch::async, &Thready::foo, this); } void foo() {

    0熱度

    1回答

    我正在開發一款遊戲。可以說,那裏有一個對象LoadingState進行這些方法(和一些其他): 創建 更新 負載 的更新被稱爲每個CPU的時鐘滴答的時間,而創建只會被調用一次,它應該調用加載函數(異步),以加載一些遊戲資源。在創建函數內異步調用加載允許(理論上)從創建/加載執行時調用的beling進行更新。但是,這並沒有發生。 之前到Visual Studio 2015年,我用的std ::異步那

    0熱度

    1回答

    我想測試下面的函數與std :: async爲靜態類,我的主要目的是等待,直到函數執行。但我面臨着以下錯誤。有人可以給我一個這個錯誤的原因。 IASD* ASDInterface = getASD();//gets the instance corrcet and tested function successfully auto habnd = std::async(std::launch:

    0熱度

    1回答

    我最近在康威的生命遊戲中創建了一個模式搜索程序,但它運行得太慢而不實用。 所以我決定把它並行化,但我失敗了;它導致了分段錯誤,這很可能是由於數據競爭造成的。 代碼的簡要說明: /* ... */ #include <list> #include <mutex> #include <future> #include <iostream> #include <forward_list> i

    0熱度

    1回答

    爲什麼不讓這樣的線程在抽象基類中工作?我試圖抽象出從這個基類派生的用戶的所有多線程細節。當我明確寫出callbackSquare返回類型int時,我不明白它爲什麼說「沒有類型命名爲'type'」。 #include <iostream> #include <future> #include <vector> class ABC{ public: std::vector<std:

    1熱度

    1回答

    C++ 11 int main(int argc, char** argv) { std::async(std::launch::async, [](){ while(true) cout << "async thread" <<endl; }); while(true) cout << "main thread" << endl; return

    2熱度

    1回答

    我有一個函數,需要一個回調,並用它在10個獨立的線程上工作。但是,通常情況下並非所有的工作都是需要的。例如,如果在第三個線程上獲得了所需的結果,則應該停止剩餘活動線程的所有工作。 這個答案here表明這是不可能的,除非你有回調函數需要一個額外的std::atomic_bool參數,這表明函數是否應該過早終止。 此解決方案對我無效。工作人員在基礎班級內部分解,這個基礎班的全部要點是抽象出多線程的細節

    3熱度

    1回答

    在VS2015中的下面的代碼中,我在第一行得到acefbd,這是正確的。但是在第二次測試中,我將其分爲單獨的行,輸出爲abcdef。 這是預期的行爲? #include <future> #include <iostream> using namespace std; void a() { std::cout << "a"; std::this_thread::sleep_for (

    0熱度

    1回答

    我在練,在C++ 11引入了std::asyn功能,我寫了一個簡單的例子 #include<future> #include<iostream> using namespace std; void check() { cout<<"some"<<endl; } int main() { auto p=std::async(std::launch::async,