当我尝试处置并立即创建MemoryMappedFile
时,下面的代码抛出了。
memMapFile = MemoryMappedFile.CreateNew("MemMapFile1", size);
memMapFile.Dispose();
// Thread.Sleep(20);
memMapFile = MemoryMappedFile.CreateNew("MemMapFile1", size);
// throws System.IO.IOException: 'Cannot create a file when that file already exists.'
但是,如果取消注释Thread.Sleep(..)
行,则上面的示例不会抛出。
Q ,如何处置并重新创建MemoryMappedFile
而不触发异常的正确方法是什么?在创建具有相同名称的MemoryMappedFile
之前是否有一个等待期?