1
16
你可以使用 win32 memcpy 通过p-invoke函数。
除了从托管代码调用Win32函数的(轻微)开销之外,实际的复制性能应该与使用相同函数的C/C++代码相同。 不要忘记,您也可以使用不安全的块(和编译器选项),并且一次只复制一个字节/int/long的数据:
这消除了平台依赖性,但是您需要非常小心边界检查和指针算法。 |
2
7
如果您可以以.NET 4.6或更高版本为目标,请尝试 System.Buffer.MemoryCopy . 我相信这个方法和其他使用p/invoke的解决方案的主要区别在于,这个方法避免了较小规模的p/invoke,而只是直接进行复制。 Here's .NET核心中的实施要点(最新版本为2018-06-19)。 |
3
5
没有对性能发表评论,纯粹是因为我没有测试它。您可以通过interop从kernel32使用copymemory或movememory来实现与非托管拷贝相同的性能。 这是copymemory的声明
|
4
1
不过,要记住的是
这是一份声明
我想是为了记录
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |