c#:是否有任何理由支持异步套接字调用在我自己的线程池中进行同步调用?

标签 c# sockets asynchronous threadpool

调用 BeginGetResponse 与调用 BeginGetResponse 相比有什么性能优势吗? 在我自己的线程池中调用 GetResponse?我自己游泳池的优势 是我可以控制请求的队列。

谢谢!

最佳答案

当您调用 GetResponse 时,即使您在后台 ThreadPool 线程上调用它,该线程仍会被阻塞,并且无法去做其他工作。这意味着上下文切换等。但是,如果您使用 BeginGetResponse,那么它会将工作卸载到网卡,但是最重要的是,调用线程现在可以自由地进行其他工作。网卡完成后,它会通知您的应用程序,此时将调用回调。

关于c#:是否有任何理由支持异步套接字调用在我自己的线程池中进行同步调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5986921/

相关文章:

c - 使用 gethostbyname 时出现段错误

c# - NetworkStream.ReadAsync 的 ReadTimeout

node.js - 完成所有迭代后的 async.each 回调

javascript - IF 语句和异步函数的控制流程

ios - ImageView 导致尴尬的挂起?

列名中的 C# DataTable DataGrid 特殊字符 "/"(斜杠)

c# - 如何在 .NET 中将 POST 请求内容保存为文件

C# 和 C++,从 C# 调用 C++ dll 时出现运行时错误

java - 如何在Java中仅通过套接字通信来实现流量控制?

c# - 使用 Entity Framework 4 和 Code-First 从数据库中排除字段/属性