本文整理汇总了C#中Windows.Networking.Sockets.StreamSocket.CancelIOAsync方法的典型用法代码示例。如果您正苦于以下问题:C# StreamSocket.CancelIOAsync方法的具体用法?C# StreamSocket.CancelIOAsync怎么用?C# StreamSocket.CancelIOAsync使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Windows.Networking.Sockets.StreamSocket
的用法示例。
在下文中一共展示了StreamSocket.CancelIOAsync方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ProcessRequestAsync
private async void ProcessRequestAsync(StreamSocket socket)
{
HttpRequest request;
try
{
request = HttpRequest.Read(socket);
}
catch (Exception ex)
{
await WriteInternalServerErrorResponse(socket, ex);
return;
}
if (AcceptedVerbs.Contains(request.Method.Method))
{
HttpResponse response;
try
{
response = await restHandler.Handle(request);
}
catch (Exception ex)
{
await WriteInternalServerErrorResponse(socket, ex);
return;
}
await WriteResponse(response, socket);
await socket.CancelIOAsync();
socket.Dispose();
}
}
示例2: Send
private static async Task Send(StreamSocket socket, object data)
{
if (socket != null)
{
using (var writer = new DataWriter(socket.OutputStream))
{
var str = Transport.Serialize(data);
writer.WriteUInt32(writer.MeasureString(str));
writer.WriteString(str);
try
{
await writer.StoreAsync();
//await writer.FlushAsync();
}
catch (Exception exception)
{
// If this is an unknown status it means that the error if fatal and retry will likely fail.
if (SocketError.GetStatus(exception.HResult) == SocketErrorStatus.Unknown)
{
throw;
}
}
writer.DetachStream();
}
await socket.CancelIOAsync();
socket.Dispose();
}
}
示例3: ConnectButton_Click
private async void ConnectButton_Click(object sender, RoutedEventArgs e)
{
ApplicationData.Current.LocalSettings.Values["hostname"] = TargetServerTextBox.Text;
ApplicationData.Current.LocalSettings.Values["port"] = port;
try
{
SocketActivityInformation socketInformation;
if (!SocketActivityInformation.AllSockets.TryGetValue(socketId, out socketInformation))
{
socket = new StreamSocket();
socket.EnableTransferOwnership(task.TaskId, SocketActivityConnectedStandbyAction.Wake);
var targetServer = new HostName(TargetServerTextBox.Text);
await socket.ConnectAsync(targetServer, port);
// To demonstrate usage of CancelIOAsync async, have a pending read on the socket and call
// cancel before transfering the socket.
DataReader reader = new DataReader(socket.InputStream);
reader.InputStreamOptions = InputStreamOptions.Partial;
var read = reader.LoadAsync(250);
read.Completed += (info, status) =>
{
};
await socket.CancelIOAsync();
socket.TransferOwnership(socketId);
socket = null;
}
ConnectButton.IsEnabled = false;
rootPage.NotifyUser("Connected. You may close the application", NotifyType.StatusMessage);
}
catch (Exception exception)
{
rootPage.NotifyUser(exception.Message, NotifyType.ErrorMessage);
}
}