JSR 133
JSR 133是Java语言规范的一个JSR(Java Specification Request),全称为Java Memory Model and Thread Specification Revision。它是Java 5中新增的一项规范,旨在修正Java内存模型(Java Memory Model,JMM)和线程规范(Thread Specification)中的缺陷和不足。
Java内存模型定义了多线程程序中共享变量的可见性、有序性和原子性等问题,它是Java多线程编程的核心之一。JSR 133旨在解决JMM中的缺陷和不足,使Java内存模型更加严谨和精确,从而提高多线程程序的正确性和性能。
除了内存模型外,JSR 133还规定了Java线程规范中一些重要的语义和约束,例如线程状态的定义和转换、线程中断的处理、线程的优先级和调度等。这些规范的目的是为了确保Java多线程程序在不同平台和不同实现上具有一致的行为和语义。
JSR 133对Java多线程编程有着重要的影响,它提供了一些关键性的概念和规则,使得Java程序员可以更加安全、高效地进行多线程编程。
JSR 133的更多相关文章
- JSR - 133 都解决了哪些问题?
究竟什么是内存模型? 在多处理系统中,每个 CPU 通常都包含一层或者多层内存缓存,这样设计的原因是为了加快数据访问速度(因为数据会更靠近处理器) 并且能够减少共享内存总线上的流量(因为可以满足许多内 ...
- JSR
JSR是Java Specification Requests的缩写,意思是Java 规范提案.是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求.任何人 ...
- JSR规范
JSR是JavaSpecification Requests的缩写,意思是Java 规范提案.是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求.任何人都 ...
- JSR规范整理
Web Service技术 Java Date与Time API ( JSR 310) Java API for RESTful Web Services (JAX-RS) 1.1 (JSR 311) ...
- Java技术开发标准JSR介绍
JSR我们需要先提及JCP(Java Community Process SM(JCP SM)).JCP是为Java技术开发标准技术规范的机制.任何人都可以注册并参与审阅和提供Java规范请求(JSR ...
- JMM(java内存模型)
What is a memory model, anyway? In multiprocessorsystems, processors generally have one or more laye ...
- Java内存模型深度解析:基础部分--转
原文地址:http://www.codeceo.com/article/java-memory-1.html 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何 ...
- java 内存模型
翻译自wiki百科:https://en.wikipedia.org/wiki/Java_memory_model 没找到直接在wiki上编辑中文的页面,我就在这翻译下,自己学习用. java内存模型 ...
- java内存模型-顺序一致性
数据竞争与顺序一致性保证 当程序未正确同步时,就会存在数据竞争.java 内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量, 在另一个线程读同一个变量, 而且写和读没有通过同步来排序. 当代 ...
- java内存模型-基础
基础 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体).通信是指线程之间以何种机制来交换信息.在命令式编程中,线程之间 ...
随机推荐
- VUE10 计算属性
1 Vue计算属性简介 1)定义:我们需要一个属性,但是这个属性不存在,但是可以通过已有的属性计算得来,那么就可以定义一个计算属性. 2)原理:底层借助了Object.defineproperty方法 ...
- VMware虚拟机的简单安装和配置
一.简单了解虚拟机 虚拟机英文名(Virtual Machine)是通过软件模拟的完整计算机系统.在实体计算机中能够完成的工作在虚拟机中都能够实现.在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存 ...
- python判断密码连续,重复,大小写、数字、符号混合密码复杂度要求
一.python 判断密码连续,重复,大小写.数字.符号混合密码复杂度要求 1. 运行环境 python 3.6.8 2. 密码必须包含大小写.数字.特殊符号中的3种且长度为8-16位 def ver ...
- C# SMTP发邮件不支持465端口的解决方案
C# 发邮件帮助类传送门(465端口除外): https://www.cnblogs.com/dennisdong/p/15953790.html 一.问题解惑,为什么465发送失败 查阅资料得知,. ...
- UBUNTU切换内核
查询可更换内核的序号 gedit /boot/grub/grub.cfg查询已安装的内核和内核的序号.找到文件中的menuentry (图中在一大堆fi-else底下)menuentry底下还有 ...
- 四:SSM框架整合
四:SSM框架整合 Spring+Spring Mvc+Mybatis整合: 代码实现: 1.创建maven工程 pom.xml <dependencies><!-- spri ...
- vue页面加载闪烁的问题以及解决方案
一.原因: 问题:当我们打开Vue页面的时候,如果弱网环境,会出现一个闪烁的效果下图:加载闪烁问题效果 原因:因为在浏览器中先执行html代码,先渲染Dom,然后再执行JavaScript代码,Vue ...
- vant组件,picker时间选择,自定义时间选择,实现datePacker,时间选择长期,增加长期选项,用于选择身份证到期时间等...
vant组件,picker时间选择,自定义时间选择,实现datePacker,时间选择长期,增加长期选项,用于选择身份证到期时间等... 最近项目中有个需求,datePicker选项,需要实现增加一个 ...
- python 合并目标文件夹中多个txt文件到指定文件中
# coding = 'utf-8' # description: 合并目标文件夹中多个txt文件,到指定文件中. import os def file_merge_to_one(dirpath): ...
- vue基础——命名路由
路由配置,是vue使用的基础中的基础,采用传统的方式会有些麻烦且不清晰,而命名路由的方式,无论path多长多繁琐,都能直接通过name就匹配到了,十分方便,所以,强烈推荐使用命名路由的方式 传统的方式 ...