#include <iostream>
#include <conio.h>
#include <thread>
using namespace std;
void func(bool *workStatus)
{
for (size_t i = 0; i < INFINITY; i++) {
if (*workStatus == false)
break;
cout << "some "; // В вашем случае тут somefunction()
}
}
int main()
{
bool status = true;
thread test(func, &status);
while (!_kbhit());
status = false;
test.join();
system("pause");
return 0;
}
使用
std::thread
,我在一个单独的线程中做了一个无限循环,你可以将一个值传递给它的指针false
,然后线程中的循环就会停止。变量
status
并interval
具有全局范围。编码:
您可以将该函数移至单独的线程
std::thread
,并在该函数之外对其进行管理。控制此功能的一种方法是通过指针。这是一个小例子,其中“some”在我们按下一个键之前无限循环显示: