我查看了AtomicInteger类(发现)的Java源代码,以了解实现JVM需要哪些原子原语。我注意到他们使用无文档的Unsafe API来实现他们的原子整数操作,并且他们使用的唯一两个原语似乎是compare and swap和compare and set操作。现在,即使没有本机处理器的支持,这些原语也可以由VM以保证与其他VM线程具有原子性的方式实现,但不一定与其他本机线程一起实现。那么,java是否要求本机架构上的这些原语具有有效的JVM,因此所有JVM实现都将支持本机线程的<
我正在尝试将Java代码转换为Objective C代码。并且java代码包含定义为易失性的变量。我在网上查看了java中的“易失性”用法,如下所示
Essentially, volatile is used to indicate that a variable's value will be所以,如果我要在Objective C中将变量设置为易失性,因为变量将被不同的线程访问,那么我不需要将这些变量设置为易失性,因为我可以将这些变量设置为原子</