所以我正在使用一些异步方法开发一个 Windows 8 应用程序。在一个特定的地方,我需要应用程序等待异步方法完成,但它似乎没有发送 EventHandle 它的状态。
以下是需要协同工作的方法:
public class Film : Page
private User loggedinUser = new User();
private EventWaitHandle handle = new AutoResetEvent(false);
private dynamic parameters;
protected override void OnNavigatedTo(NavigationEventArgs e)
{
this.parameters = e.Parameter;
LoadFacebookData(parameters);
handle.WaitOne();
LoadUserMovies(loggedinUser.UserName);
}
private async void LoadFacebookData(dynamic parameter)
{
//async code that gets info from facebook whichs determines what user is logged in
handle.Set();
}
private void LoadUserMovies(string username)
{
// irrelevant code
}
代码到达位的那一刻handle.WaitOne()
,它完全停止工作