早教吧作业答案频道 -->其他-->
1.存在一个整数j=10,设计4个线程,每个线程执行十次循环操作,其中两个线程每次对j增加5,另外两个线程对j每次减少3。写出程序,对j增减的时候不用考虑顺序问题。
题目详情
1.存在一个整数j=10,设计4个线程,每个线程执行十次循环操作,其中两个线程每次对j增加5,另外两个线程对j每次减少3。写出程序,对j增减的时候不用考虑顺序问题。
▼优质解答
答案和解析
#include
#include
int g_iValue = 10;
DWORD WINAPI ThreadProcAdd(LPVOID lpParameter );
DWORD WINAPI ThreadProcSub(LPVOID lpParameter );
void main(int argc, char* argv[])
{
HANDLE hThread[4] = {NULL};
hThread[0] = CreateThread(NULL, 0, ThreadProcAdd, NULL, 0, NULL);
hThread[1] = CreateThread(NULL, 0, ThreadProcAdd, NULL, 0, NULL);
hThread[2] = CreateThread(NULL, 0, ThreadProcSub, NULL, 0, NULL);
hThread[3] = CreateThread(NULL, 0, ThreadProcSub, NULL, 0, NULL);
WaitForMultipleObjects(4, hThread, TRUE, INFINITE);
printf(" 结果 %d\n", g_iValue);
}
DWORD WINAPI ThreadProcAdd(LPVOID lpParameter )
{
for (int i = 0; i < 10; i++)
{
g_iValue += 5;
}
return 0;
}
DWORD WINAPI ThreadProcSub(LPVOID lpParameter )
{
for (int i = 0; i < 10; i++)
{
g_iValue -= 3;
}
return 0;
}
#include
int g_iValue = 10;
DWORD WINAPI ThreadProcAdd(LPVOID lpParameter );
DWORD WINAPI ThreadProcSub(LPVOID lpParameter );
void main(int argc, char* argv[])
{
HANDLE hThread[4] = {NULL};
hThread[0] = CreateThread(NULL, 0, ThreadProcAdd, NULL, 0, NULL);
hThread[1] = CreateThread(NULL, 0, ThreadProcAdd, NULL, 0, NULL);
hThread[2] = CreateThread(NULL, 0, ThreadProcSub, NULL, 0, NULL);
hThread[3] = CreateThread(NULL, 0, ThreadProcSub, NULL, 0, NULL);
WaitForMultipleObjects(4, hThread, TRUE, INFINITE);
printf(" 结果 %d\n", g_iValue);
}
DWORD WINAPI ThreadProcAdd(LPVOID lpParameter )
{
for (int i = 0; i < 10; i++)
{
g_iValue += 5;
}
return 0;
}
DWORD WINAPI ThreadProcSub(LPVOID lpParameter )
{
for (int i = 0; i < 10; i++)
{
g_iValue -= 3;
}
return 0;
}
看了 1.存在一个整数j=10,设...的网友还看了以下:
小马胡在做一道减法题时,错把减数个位上的数字9看作7,把十位上的数字5看作3,算出的答案是43。正 2020-05-13 …
小强和小明做一道减法的作业题,小明将被减数后面多加了一个零,知道的差为750,小强将被减数的后面多 2020-06-14 …
小强和小明做一道减法的作业题,如果将被减数后面多加以个零,得到的差为750,如果将减数的后面多加一 2020-06-14 …
小马虎在做一道减法时,把减数十位上的2看作了5,结果得到的差是342,正确的差是多少?练一练:小明 2020-06-14 …
小马虎在做一道减法题时,把减数个位上的1看作7,把减数十位上的7看作1,结果得出差是111.求正确 2020-07-18 …
小粗心,太大意,计算减法看错题,被减数个位是8抄成3,减数十位的2抄成5,这样算出的差是305。你 2020-07-19 …
小粗心太大意,计算减法看错题,被减数个位的8抄成3,减数十位的2抄成5,这样算出的差是305.你知 2020-07-19 …
小巧做一道减法题时,将减数个位上的6看作9,十分位上的3看作8,结果得21.4,正确的结果是多少? 2020-07-29 …
在做一到减法题时,把被减数个位上的6写成了9,把减数十分位上的9写成了6,最小马虎在做一到减法题时 2020-07-31 …
2道数学题(不是很难,但有一点难)1.按照2.5.8.11.14.的顺序,第200个是几?(要列算式 2020-11-18 …