현재 다른 Form 에서 일정 시간간격으로 측정하는 작업을 진행할때
Main Form에서도 특정 조건이 만족할때까지 지속적으로 확인후 while문을 빠져나오는 작업을 해야하는 상황이 있습니다.
그런데 Main Form 에서의 작업이 완료될때까지 다른 Form이 먹통이 되는 현상이 있네요..
제가 어떤부분을 놓치고 있는걸까요 .. ?
그리고 혹시 참고해야할 자료가 있다면 찾아서 공부해보겠습니다..
작성한 코드 예시를 간략하게 적어 놓겠습니다..
예시
Main Form 작업
~~~~~
while(1)
{
Application->ProcessMessages();
Memo1->Lines->Add("~~~~~")
if(something == true)
{
break;
}
}
~~~~~
--> 해당 while 문 작업중일때
다른 Form 작업
~~~~
while(1)
{
if(MeasureTime < GetTickCount64()) break;
Sleep(1);
Form_Process->Panel_RestTime->Caption = FloatToStr(MeasureTime - GetTickCount64()); // 남은시간 표시
Application->ProcessMessages();
}
~~~~
--> 해당 while문은 멈춰버립니다..
|