2010-05-28 2 views
1

내가 데이터베이스에서 값을 찾아서 e.Result에 반환하는 backgroundWorker1_DoWork가 있다고 가정 해 보겠습니다. 결과를 읽는 backgroundWorker1_RunWorkerCompleted도 있다고 가정 해 봅시다.결과에 따라 백그라운드 작업자에게 DoWork 재실행?

내가 할 수 있기를 원하는 것은 e.Result를 기반으로하며 backgroundWorker1_DoWork를 다시 실행할 수 있으며이 작업을 수행하는 방법을 잘 모릅니다.

정말 감사드립니다.

답변

3

backgroundWorker1_RunWorkerCompleted 이벤트에서 e.Result를 테스트 한 후 BackgroundWorker를 다시 시작할 수 없습니까?

+0

:-) 영원히 내가 시작하고 실행할 수를 backgroundWorker1.RunWorkerAsnc()를 사용하여 해제; Form1() 초기화. 게시 한 상태에서 다시 시작하려면 어떤 코드를 사용해야합니까? 그냥 backgroundWorker1_RunWorkerCompleted에 넣으시겠습니까? – sooprise

+0

@Soo - use backgroundWorker1.RunWorkerAsync(); 대린이 제안한 것처럼 나는 이것이 당신이 처음에 백그라운드 작업을 시작한 방법이라고 생각합니다. –

+0

위대한 작품! 이제 첫 번째 RunWorkerAsync를 Form1() 또는 Form1_Load()에 넣어야합니까? – sooprise

4

당신이 그것을 처음 일을 같은 방법 - RunWorkerAsync 방법 호출하여 :

backgroundWorker1.RunWorkerAsync(); 

가 호출이 조절되어 있는지 확인하거나 루프가

관련 문제