SOAP请求会使线程挂起

时间:2011-03-19 11:33:16

标签: delphi soap


当我发出SOAP请求时,我可以看到(在任务管理器中)我的应用程序的线程数从1(主线程)增加到8,这意味着7个额外的线程,这部分是正常的,但是在收到响应之后服务,线程数减少到4(3 +主线程)并保持这种方式直到下一个请求。 因为我不习惯使用SOAP并且没有太多使用它,有没有人知道这是正常的还是我可以杀死/停止“悬挂”线程?
使用Delphi 2010

附加信息:我正在线程中运行请求,是的,我在Execute方法中调用了“CoInitialize”和“CoUninitialize”。

测试应用程序:http://www.2shared.com/file/_dE4H-lO/soap_test_app.html

谢谢大家的时间。

1 个答案:

答案 0 :(得分:1)

应用程序的其他部分是在SOAP堆栈中引用某些内容。在剩余的清理工作发生之前,这些线程不会消失。

如果反复调用SOAP函数会发生什么?它每次继续增长3还是稳定下来?如果它继续增长,你有事可做。如果没有,它的低级功能和(可能)不是你的问题。留意记忆,看看它是否会随着时间的推移而泄漏(特别是当你敲打它时)。