gpt4 book ai didi

c# - 线程化 HTTP Post 应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 11:51:07 25 4
gpt4 key购买 nike

我有一个定期执行 HTTP post 的应用程序(从 SQL 检索的数据)。每 30 秒最多生成 50 个线程并同时运行 HTTP post。如果发布失败,它会等待间隔设置为 2 倍的时间。这将发生两次。例如,30 多岁、60 多岁,然后是 120 多岁。

我正在使用普通的 Thread.Start() 来启动这个进程,但是我发现在实时服务器上,它会完全耗尽 CPU。

我的问题如下:

  • 是否有更好的类可用于提高线程性能?
  • 有没有办法在 .NET 中限制线程应用程序的 CPU 使用率?

谢谢,

凯尔

最佳答案

您不应该使用线程来运行多个 I/O 流。由于这些线程大多在 I/O 上阻塞,因此您可以使用非阻塞或异步 I/O 更有效地执行此操作。不是让一个线程与一台服务器对话,而是让一个线程与 N 个服务器对话。

由于您使用的是 HttpWebRequest,所以您想查看 HttpWebRequest.BeginGetResponseHttpWebRequest.BeginGetRequestStream .

关于c# - 线程化 HTTP Post 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2115299/

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