我有一个不断向服务器发送请求的应用程序。我使用 WebClient 类的 GetWebResponse() 方法来发送请求。但在几次请求之后,它开始抛出超时异常。这种情况仅发生在 Mono/Linux 上。相同的代码在 .Net/Windows 上运行没有任何异常。您知道可能出现什么问题吗?
注意:我尝试设置请求的 Timeout 和 ReadWriteTimeout 属性,但没有成功。
我会尝试这些可能的替代方案来尝试解决问题:
- 将 Mono 升级到 3.0.x。过去几个月围绕 WebRequests 进行了大量修复。
- 如果上述方法没有帮助,请尝试 Mono 3.2(因为它默认使用新的垃圾收集器,速度更快,称为 SGEN)。
- 如果上述方法没有帮助,请构建您自己的 Mono(主分支),如 this important pull request最近已合并。
- 如果上述方法没有帮助,请在调用 Mono 可执行文件时使用“--server”标志(此功能仅在 Mono 的最新版本中可用,您需要从 master 分支进行编译)。
- 如果以上方法都没有帮助,请抄送 this bug ,因为我想我八月份会有时间来修复它,也许它会对您有所帮助。
我是一名优秀的程序员,十分优秀!