Question: Given the following code: #include #include #include #define MAX_COUNT 2000000 int sharedCounter = 0; void MyCounterPlus() { int i; for (i = 0; i <
Given the following code:
#include
int sharedCounter = 0;
| void MyCounterPlus() { int i; for (i = 0; i < MAX_COUNT; i++) sharedCounter++; } | void MyCounterMinus() { int i; for (i = 0; i < MAX_COUNT; i++) sharedCounter--; } |
int main(void) { int i; pthread_t thread[2]; for (i = 0; i < 2; i++) { if ((i % 2) == 0) pthread_create(&thread[i], NULL, (void *) MyCounterPlus, NULL); else pthread_create(&thread[i], NULL, (void *) MyCounterMinus, NULL); } printf("SharedCounter = %d ", sharedCounter); return 0; }
The output of this program is:
"SharedCounter = 0" because the two created threads do not execute.
true or false
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
