■ VisualC++(MFC限定)相談室 2■
■ このスレッドは過去ログ倉庫に格納されています
0361デフォルトの名無しさん(355)
NGNG遅くなってすいません。
詳しい内容として、こんな風にマルチスレッドを作ったのですが、
for(time=0;time<10;time++){
Sleep(10);
DioOutputWord( InOut, FBIDIO_OUT1_16,kekka);
AfxBeginThread(ACK,myED2);
}
UINT ACK(void *pParam)
{
CEdit* pED2 = (CEdit*)pParam;
UINT exitCode;
exitCode=0;
DioInputWord( InOut, FBIDIO_IN1_16, &InData);
while(InData == 1)
{
if(stop_flg){
AfxEndThread(exitCode);
break;
}
Sleep(10);
DioInputWord( InOut, FBIDIO_IN1_16, &InData);
if(InData != 1){
AfxEndThread(exitCode);
DioInputWord( InOut,FBIDIO_IN1_16,&InData);
return 1;
}
}
stop_flg = TRUE;
return 0;
}
原因としては、外部出力側の関数を抜けるとそのままfor関数の中に戻って
しまい、そのままずっとfor関数の処理を行ってしまっているようなのです。
for関数から抜け出すにはどうすればいいのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています