2012-11-20 62 views
1

我曾經有一個非常簡單的一行或兩行代碼,可以用自己的線程啓動一個函數,並繼續運行,直到應用程序關閉,C++控制檯應用程序。失去了它所在的項目,並且記住它很難找到。現在無法在網上找到它。大多數例子說明了複雜的多線程情況。但我只需要在它自己的線程中打開這個函數。希望有人知道我在說什麼,或類似的解決方案。C++使用自己的線程簡單地啓動一個函數

例如。 在自己的線程啓動無效ABC,沒有參數

+0

你還記得你正在使用哪個庫嗎?促進?並行線程? – Philipp

回答

5

使用C++11 thread support一個例子:

#include <thread> 

void abc(); // function declaration 

int main() 
{ 
    std::thread abcThread(abc); // starts abc() on a separate thread 

    .... 

    abcThread.join(); // waits until abcThread is done. 
} 

如果你沒有C++ 11的支持,同樣可以使用boost::thread,只需通過更換boost::threadstd::thread