Android JMM8 big atomic operation
发布时间
阅读量:
阅读量
java内存模型
该Java内存模型(缩略为JMM)规定所有变量均存储在主态共享空间中。每个逻辑线程都拥有专用的工作态空间(类似于CPU中的高速缓存单元)。这些工作态空间中存储了对应逻辑线框所涉及的所有主态共享空间中的变量副本。对于该逻辑线框的操作(包括读取和赋值等),必须在其专用的工作态空间中进行处理。不同逻辑线框之间的专用工作态空间互不干扰。不同逻辑线框之间的数据传输必须通过主态共享空间实现。
Java内存模型的8大原子操作:
该函数用于对主内存中的变量实施锁定。它通过加锁的方式使一个变量被单一线程占用,并将其状态标记为被锁定的状态。
unlock(解锁):unlock函数的作用是作用于主内存的变量。该函数会使主内存中的变量被解锁。它的功能是能够释放原本处于锁定状态的主内存变量,并使这些释放出来的变量可被其他线程进行锁。
read(读取):该操作针对主内存中的变量执行读取操作。它将数据从主内存传输至线程的工作内存,并为后续的load操作能够使用这些数据做准备。
load(赋值):用于将目标变量从主存储器中读取的数据赋值给工作内存中的对应位置。
use(使用):影响内存中的变量并将其值发送给执行引擎。当虚拟机遇到需要访问变量的字节码指令时,该操作会被触发.
assign(赋值):影响工作内存中的变量的行为。它负责将来自执行引擎的一个值传递给工作内存中的相应变量。每
全部评论 (0)
还没有任何评论哟~
