相关疑难解决方法(0)

长度到大小(MB)

我知道字符串或字符串生成器有 strlen 或 length 属性。有什么方法可以计算字符串的长度并显示或公开特定字符串的大小?(例如 if (string = length of 200) then (String = 20KB 或 MB)

c# string

6
推荐指数
1
解决办法
1万
查看次数

MemoryMappedFile不适用于2个进程?

我用MemoryMappedFileas msdn做了一个简单的测试:

2个进程,1个内存映射文件:

  • 第一个进程添加字符串"1"
  • 第一个进程等待
  • 第二个进程添加字符串"2"并终止
  • 第一个进程现在读取整个内存映射文件

过程A:

using (MemoryMappedFile mmf = MemoryMappedFile.CreateNew("testmap", 10000))
            {
                bool mutexCreated;
                Mutex mutex = new Mutex(true, "testmapmutex", out mutexCreated);
                using (MemoryMappedViewStream stream = mmf.CreateViewStream())
                {
                    BinaryWriter writer = new BinaryWriter(stream, Encoding.UTF8);
                    writer.Write("1");
                }
                mutex.ReleaseMutex();
                Console.WriteLine("Start Process B and press ENTER to continue.");
                Console.ReadLine();
                mutex.WaitOne();
                using (MemoryMappedViewStream stream = mmf.CreateViewStream())
                {
                    BinaryReader reader = new BinaryReader(stream, Encoding.UTF8);
                    Console.WriteLine("Process A says: {0}", reader.ReadString());
                    Console.WriteLine("Process B says: {0}", reader.ReadString());
                }
                mutex.ReleaseMutex();
            }
Run Code Online (Sandbox Code Playgroud)

过程B:

 using …
Run Code Online (Sandbox Code Playgroud)

c# .net-4.0 memory-mapped-files

2
推荐指数
1
解决办法
1749
查看次数

标签 统计

c# ×2

.net-4.0 ×1

memory-mapped-files ×1

string ×1