我有以下测试程序,其中包含一个简单的函数,可以找到我尝试在多个线程中运行的素数(仅作为示例).
#include <cstdio>
#include <iostream>
#include <ctime>
#include <thread>
void primefinder(void)
{
int n = 300000;
int i, j;
int lastprime = 0;
for(i = 2; i <= n; i++) {
for(j = 2; j <= i; j++) {
if((i % j) == 0) {
if(i == j)
lastprime = i;
else {
break;
}
}
}
}
std::cout << "Prime: " << lastprime << std::endl;
}
int main(void)
{
std::clock_t start;
start = std::clock();
std::thread t1(primefinder);
t1.join();
std::cout << …Run Code Online (Sandbox Code Playgroud)