최선의 방법이 무엇을 하려는지 궁금합니다. 내 응용 프로그램에는 백그라운드 다운로드 작업을 시작한 다음 다운로드 한 파일에 따라 일부 작업을 수행하는 단추가 있습니다.C# 비동기 작업이 완료 될 때까지 대기
사용자가 여전히 기본 양식을 사용할 수있는 상황은 "필요한 데이터가 다운로드되면 게임이 곧 시작됩니다"상황과 같습니다.
private void btnStart_Click(object sender, EventArgs e)
{
//execute some code
Downloader.RunWorkerAsync(files); //this worker reports progress to the main form
while (Downloader.IsBusy)
Application.DoEvents();
//execute some more code
}
나는 그렇게하는 것이 전혀 좋지 않다는 것을 알고 있습니다.
다운로드 작업 중에 주 양식이 응답해야하기 때문에 다운로드 코드를 동 기적으로 실행할 수 없습니다. 또한 프로그램의 다른 많은 영역에서 사용되기 때문에 최종 코드를 다운로드 완료 이벤트에 넣을 수 없으며 "일반"다운로드 시스템으로 남아 있어야합니다.
그래서 내가 원하는 것을 할 수있는 방법이 있습니까? 다른 비동기 메서드에 대한 경험이 없습니다.
를 참조하십시오, 그것은 작동하지 않는 이유는 무엇입니까? 이 프로그램의 사용자는 대부분 3.0 - 4.0에 있습니다. – Ryan