【发布时间】:2010-02-06 10:33:05
【问题描述】:
我们有多线程应用程序。每个线程在初始化时都必须使用 CoIntialize 调用,因为我们使用一些 C++ COM 对象进行 DB 操作。该应用程序在生产环境中可以正常工作更长的时间。但突然线程初始化函数中的 CoIntialize() API 失败并出现以下错误 线程初始化; HRESULT:80070008:没有足够的存储空间来处理此命令。 操作系统:带有 SP2 的 Windows Server 2003 R2。我在stackoverflow中找到了工作 在 Windows 注册表中将控制台应用程序的堆大小从 512 KB 增加到 1MB。我能做到。但我想知道首先发生这种情况的可能原因是什么。环境最近没有改变。该机器上运行着其他几个进程,它们可以毫无问题地调用 Coinitialize。它仅失败了两个过程。提前致谢
【问题讨论】:
-
你使用了多少线程?
-
它是一个变量计数。它可能介于 7 到 64 之间。当问题发生时,我没有看到超过 10 个线程正在运行。谢谢