繁体   English   中英

无法将异步等待与AcceptTcpClientAsync方法一起使用

[英]Unable to use async-await with AcceptTcpClientAsync method

我看到了很多像这样的代码片段:

TcpClient client = await listener.AcceptTcpClientAsync();
Logger.Info("Client accepted");

https://codereview.stackexchange.com/questions/33748/wpf-async-await-tcpclient-tcplistener-sample

var tcpClient = await listener.AcceptTcpClientAsync();
HandleConnectionAsync(tcpClient);

https://bsmadhu.wordpress.com/2012/09/29/simplify-asynchronous-programming-with-c-5-asyncawait/

似乎它适用于大多数人。 不幸的是,它对我不起作用-编译器给我以下错误:

错误CS4033:“等待”运算符只能在异步方法中使用。 考虑使用“异步”修饰符标记此方法,并将其返回类型更改为“任务”

我究竟做错了什么? 我该如何解决?

我究竟做错了什么?

正像错误状态一样, 调用方法需要使用async修饰符进行标记,并具有TaskTask<T>的返回类型:

public async Task ConnectAsync()
{
    TcpClient client = await listener.AcceptTcpClientAsync();
    Logger.Info("Client accepted");
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM