567
社区成员




int main(int argc, _TCHAR* argv[]) {
#pragma omp parallel for
for (int i = 0; i < 20; ++i) {
printf("i=%d\n", i);
}
printf("Finished\n");
return 0;
}
#include <ctime>
using namespace std;
int main() {
CRITICAL_SECTION cs;
int i;
clock_t t1, t2;
InitializeCriticalSection(&cs);
t1 = clock();
for (i = 0; i < 10000000; ++i) {
EnterCriticalSection(&cs);
LeaveCriticalSection(&cs);
}
t2 = clock();
printf("One task, enter and leave critical section 10000000 times, time = %1dms\n", t2 - t1);
t1 = clock();
#pragma omp parallel for num_threads(2)
for (i = 0; i < 10000000; ++i) {
EnterCriticalSection(&cs);
LeaveCriticalSection(&cs);
}
t2 = clock();
printf("Two task, enter and leave critical section 10000000 times, time = %1dms\n", t2 - t1);
DeleteCriticalSection(&cs);
return 0;
}