본문 바로가기

VB.net & WPF & C#

Thread속 Loop(for)에서 event 발생 기다리기 : System.Threading.AutoResetEvent




Button1 : Thread 시작(0~20 For 문 _WaitHandle2_.WaitOne())

Button2 : Event발생기(_WaitHandle2_.Set())


Button1을 누르면 Thread에서 For문이 시작.

For문 끝에는 _WaitHandle2_.WaitOne()가 있어서, _WaitHandle2_.set()이 될때까지 기다린다.


Button2를 누르면 _WaitHandle2_.Set()이 발생되서 다음 loop진행.

하지만, timer에 의해 3초동안 button2가 눌리지 않으면 강제 _WaitHandle2_.set().