[英]Run function and keep loop running c++
如何在循環內運行一個函數,並在function2完成時不等待就保持循環運行?
int main(){
function1();
}
function1(){
while(1){
function2(); }
}
function2(){
//some task that needs to do independently while, While loop runs
}
您可以啟動function2
異步:
#include <future>
void function1(){
while(1){
std::async(std::launch::async, function2);
}
}
請注意,這會生成很多實例,所有實例都調用function2()
,您可能應該限制它。
用function2產生一個新線程,然后在先前調用它的循環的function 1中啟動它們。 它應該編譯,但是會產生無限線程,並且會出問題,所以要小心。 聽起來像線程是您的解決方案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.