276得票16回答
为什么会存在sun.misc.Unsafe类,它在现实世界中如何使用?

我最近了解到sun.misc.Unsafe包,惊讶于它所能实现的功能。 当然,该类未被记录在文档中,但我想知道是否有使用它的充分理由。在哪些情况下可能需要使用它?在现实世界的场景中,它可能如何使用? 此外,如果您确实需要它,这是否不表示您的设计可能存在问题? 为什么Java甚至要包括这个类?

158得票7回答
为什么我会收到“只有在使用 /unsafe 编译时才能出现不安全代码”的错误提示?

我为什么会收到以下错误提示? 如果使用/unsafe编译,则只能出现不安全的代码"? 我在Windows CE上使用C#和Visual Studio 2008进行编程。

149得票17回答
我如何在Java中使用指针?

我知道Java没有指针,但我听说Java程序可以使用指针创建,并且只有少数精通Java的人才能做到。这是真的吗?

91得票1回答
如何从`Box`中获取所拥有的值?

这个函数的实现是什么? fn unbox<T>(value: Box<T>) -> T { // ??? } 文档中唯一看起来符合我需求的函数是Box::into_raw。下面代码可以通过类型检查: fn unbox<T>(value:...

79得票5回答
何时在C#/.NET中使用指针?

我知道C#允许程序员在不安全的上下文中访问和使用指针。但是,什么情况下需要使用它? 在什么情况下,使用指针变得不可避免? 这只是出于性能方面的考虑吗? 此外,为什么C#通过不安全的上下文公开了这个功能,并从中删除了所有托管优势?从理论上讲,有可能在不失去托管环境的任何优势的情况下使用指针吗?

74得票2回答
sun.misc.Unsafe文档在哪里可以找到?

有人知道关于sun.misc.Unsafe的全面文档吗? 我正在寻找有关Unsafe.putOrderedInt()的文档。我只能找到这些。public native void putOrderedInt(Object o, long offset, int x) ...

65得票2回答
使用 unsafe 关键字在循环内部和外部有什么区别吗?

过去我从来没有需要使用unsafe,但现在我需要用它来操作位图指针。我找不到任何说明相反的文档,但我想更好地了解unsafe的工作原理,以及是否有区别使用它在循环内部还是外部。哪种做法更好:unsafe { for (int x = 0; x < maxX; x++) {...

64得票7回答
C#性能 - 使用不安全指针而非IntPtr和Marshal

问题 我正在将一个C应用程序移植到C#。这个C应用程序调用了许多来自第三方DLL的函数,因此我在C#中编写了P/Invoke包装器来调用这些函数。其中一些C函数分配数据,我必须在C#应用程序中使用这些数据,所以我使用了 IntPtr、Marshal.PtrToStructure 和 Mars...

54得票3回答
错误 lnk2026:模块对于safeseh图像不安全

在构建一个Visual C++示例项目时,我遇到了这个错误。 首先,我下载了三个示例项目,它们都解决同一个问题:打印出所有小于N的质数(您可能了解这些示例项目?)。我成功地构建了纯C项目,没有任何问题。但是,当我尝试构建基于汇编的项目时,就会出现这个错误。 谢谢。

51得票4回答
Java 8中的Unsafe类:xxxFence()指令

Java 8 在 Unsafe 类中添加了三个内存屏障指令 (来源): /** * Ensures lack of reordering of loads before the fence * with loads or stores after the fence. */ void ...