繁体   English   中英

“没有足够的存储空间来处理此命令。” 互斥量

[英]“Not enough storage is available to process this command.” for Mutex

我发布这个问题是因为我没有找到这个问题的答案,所以我认为有人可能需要这个解决方案。 我没有提供我的代码,因为我可以确认问题是在互斥初始化时发生的。
这是错误消息和调用堆栈。

---> (Inner Exception #4) System.IO.IOException: Not enough storage is available to process this command. : 'ABCDEFGHIJK'
     at System.Threading.Mutex.CreateMutexCore(Boolean initiallyOwned, String name, Boolean& createdNew)
     at NormalizationService.Controllers.PhysicalChunkingController.Store(Chunk chunk, Stream bytes) in /usr/local/...

我已经搜索了此错误消息的解决方案,大多数解决方案都类似于此页面https://appuals.com/fix-not-enough-storage-available-process-command/ 它不能解决我的问题。

我终于发现是因为我没有释放互斥对象。 我认为它是轻量级的,所以我不需要释放它们。

但是,我的程序将并行运行并初始化大约 200,000 个互斥对象。 在我的实验中,当我初始化大约 160,000 个互斥对象时很少发生这种情况。 所以我想只有极少数人会遇到这个问题。

而且我不太确定为什么我会收到此错误消息,而不是像 OutOfMemory Exception 这样的常规错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM