无法将异步等待与AcceptTcpClientSync方法一起使用
本文关键字:方法 一起 AcceptTcpClientSync 异步 等待 | 更新日期: 2023-09-27 18:19:34
我看到了很多像这里这样的代码片段:
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:"await"运算符只能在异步中使用方法请考虑使用"async"修饰符标记此方法,并将其返回类型更改为"任务"
我做错了什么?我该怎么修?
我做错了什么?
与错误状态完全一样,调用方法需要用async
修饰符进行标记,并且返回类型为Task
或Task<T>
:
public async Task ConnectAsync()
{
TcpClient client = await listener.AcceptTcpClientAsync();
Logger.Info("Client accepted");
}