鑑於這種for循環:C++運行併發for循環,甚至可能嗎?
std::vector<std::string> V={"element1","element2","element3"};
for(int i=V.size(); i--;)
{
std::cout<<i<<std::endl;
}
是否有可能運行的每個循環的循環並行?所以每個std :: cout立刻出現?
我有一個向量的函數指針,我需要循環並執行所有在同一時間,非一個接一個。
注意:在這種情況下,std :: thread,std :: async沒有幫助完整,因爲我不知道向量的大小,因此必須在每個循環中創建一個線程並運行它。這不會導致併發性。
你也可以在這裏查看:http://en.cppreference.com/w/cpp/experimental/parallelism – Hayt
你應該進一步闡明你希望你的輸出到std :: cout的樣子。你需要輸出的特定順序嗎? – midor
總之不可能,即使你使用線程他們,都不會在同一時間執行 –