为了使用指针,我必须使用 /unsafe 编译我的汇编代码。我想知道在使用 /unsafe 编译时有什么不同之处。请假设没有编程错误,如无效的指针使用等。如果我使用不安全编译的汇编代码,是否会损失性能?是否存在任何内存缺陷?
为了使用指针,我必须使用 /unsafe 编译我的汇编代码。我想知道在使用 /unsafe 编译时有什么不同之处。请假设没有编程错误,如无效的指针使用等。如果我使用不安全编译的汇编代码,是否会损失性能?是否存在任何内存缺陷?
使用“不安全”的代码可以大幅提高性能,直接访问内存和指针算术运算。通常使用它的情况是在.NET代码中专注于高性能,例如3D渲染核心引擎。将此类内容写入100%.NET代码会使应用程序变得太慢,因此指针就可以挽救局面,尤其是当我们需要处理C/C++库之间的“桥梁”时,比如OpenGL。
长话短说:如果编写良好的非托管代码,则一定会受益。
通过移除数组边界检查,不安全的代码可能会提高应用程序的性能。
使用不安全的代码会引入安全和稳定性风险。