是否有一个C#等价于boost::进程间::基本#字符串? 在C++中,使用Booo::进程可以定义Boosi::ItPoal::Basic字符串,它基本上是存储在内存映射文件中的字符串的抽象。您可以像应用程序中的任何其他字符串一样无缝地使用它(当然,假设您注意线程安全)
C#是否有任何等效的库/nuget包/代码段?否。但是,即使可以透明地实现,C#中的字符串也是不可变的。因此,我不认为拥有一个这样的库是非常有用的。Boost类中没有任何东西使它特别适合MMF。C++中的字符串只是一个噩梦,每个非平凡的库都被迫添加自己的库,因为它不能依赖另一个的实现细节。不要重复这个错误,使用Encoding.GetBytes()。@HansPassant,但我可以使用在MMF中分配该字符串的boost::interprocess::分配器,甚至可以将这些字符串放在存储在MMF中的数据结构中,例如boost::interprocess::map或boost::interprocess::vector。我在C#中寻找一个类似的抽象,一个抽象处理流的抽象。是否有一个C#等价于boost::进程间::基本#字符串? 在C++中,使用Booo::进程可以定义Boosi::ItPoal::Basic字符串,它基本上是存储在内存映射文件中的字符串的抽象。您可以像应用程序中的任何其他字符串一样无缝地使用它(当然,假设您注意线程安全),c#,c++,shared-memory,memory-mapped-files,boost-interprocess,C#,C++,Shared Memory,Memory Mapped Files,Boost Interprocess,C#是否有任何等效的库/nuget包/代码段?否。但是,即使可以透明地实现,C#中的字符串也是不可变的。因此,我不认为拥有一个这样的库是非常有用的。Boost类中没有任何东西使它特别适合MMF。C++中的字符串只是一个噩梦,每个非平凡的库都被迫添加自己的库,因为它不能依赖另一个的实现细节。不要重复这个错误,使用Encoding.GetBytes()。@HansPassant,但我可以使用在MMF中分配该字符串的boost::interprocess::分配器,甚至可以将这些字符串放在存储在MMF