gpt4 book ai didi

c# - 异步 - 等待直到有人尝试连接

转载 作者:行者123 更新时间:2023-12-01 16:26:49 24 4
gpt4 key购买 nike

我想创建一个异步方法,等待有人尝试连接看起来像的东西

await (listener.Pending() == true);

当然,这是行不通的。我怎样才能做到这一点?

最佳答案

如果您可以使用 async/await,那么您可能正在使用 .NET 4.5。如果是这样,您可以使用 AcceptSocketAsync AcceptTcpClientAsync TcpListener 上的方法?例如:

await listener.AcceptSocketAsync();

Pending方法与这两个方法执行相同的检查,但只是立即返回 true/false 。两个Accept...Async被设计为阻止直到 Pending否则会返回true然后把你的 Socket 交给你或TcpClient分别。

背景

来自 Pending 文档:

This non-blocking method determines if there are any pending connection requests. Because the AcceptSocket and AcceptTcpClient methods block execution until the Start method has queued an incoming connection request, the Pending method can be used to determine if connections are available before attempting to accept them.

Accept...Async方法与Accept...相同版本,但您可以 await他们。

关于c# - 异步 - 等待直到有人尝试连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23594597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com