当等待 ConnectAsync 方法完成时,我需要调用另一个方法。我尝试了线程池、循环等,但我仍然遇到同样的问题,因为当启动方法 ConnectAsync 然后立即调用下一个方法但我需要先完成 ConnectAsync 方法然后调用我的方法。方法 ConnectAsync 正在连接到我的 Web 套接字客户端中的服务器,当我连接时,应该调用我的方法(方法导航到另一个页面)。任何想法?.
等待的方法:await socket.ConnectAsync(server)
我希望在等待完成时调用的方法:Frame.Navigate(typeof(MainContentPage));
我的网络套接字客户端中的方法:
public async void _connect(string token, string idInstalation, string lang)
{
try
{
if (token!=null){
socket.SetRequestHeader("Token", token);
socket.SetRequestHeader("Lang", lang);
socket.SetRequestHeader("idInstallation", idInstalation);
}
await socket.ConnectAsync(server);
System.Diagnostics.Debug.WriteLine("Connected");
connected = true;
writer = new DataWriter(socket.OutputStream);
messageNumber = 1;
}
catch (Exception)
{
var dialog = new MessageDialog("Cannot connect to server", "Error").ShowAsync();
}
}
public static void connect(string token, string idInstalation, string lang)
{
instance._connect(token,idInstalation,lang);
}
调用 websocket 方法的主页:
private void connectMe()
{
WebSocketClient.connect(null, null, null);
Frame.Navigate(typeof(MainContentPage));
}