涉及到并发的一些关键字理解
来源:互联网 发布:php数组循环 编辑:程序博客网 时间:2024/05/13 07:16
1 volatile关键字的理解
Java内存模型规定所有的变量都是存在主存中,每个线程都有自己额工作内存。线程对变量的所有操作都必须在工作内存中进行,而不能直接对主存进行操作,并且每个线程不能访问其他线程的工作内存
Java中只有简单的读取、赋值(而且必须是将数字赋值给某个变量,变量之间的相互赋值不是原子操作)才是原子操作
Java提供了volatile关键字来保证可见性和提供一定的有序性,并不能保证原子性
具体见http://www.cnblogs.com/dolphin0520/p/3920373.html
2atomic关键字的理解
Atomic内部使用到了volatile关键字同时使用CAS无锁算法保证原子性 具体见http://www.cnblogs.com/programerlrc/articles/4936369.html
3copyonwrite是一种读写分离的思想,读和写不同的容器 具体见http://ifeve.com/java-copy-on-write/
4CountDownLatch http://www.itzhai.com/the-introduction-and-use-of-a-countdownlatch.html#read-more
5ConCurrentHashmap 采用锁分离技术 http://blog.csdn.net/wl_ldy/article/details/7228127
6synchronized和lock
http://www.cnblogs.com/dolphin0520/p/3923737.html
http://www.cnblogs.com/dolphin0520/p/3923167.html
lock中例子1,lock()的正确使用方法出现问题的解释,当每一个新线程被创建时,它都将得到它自己的PC寄存器以及一个java栈。如果线程正在执行的一个java方法,那么PC寄存器的值将总是指示下一条将被执行的指令,而它的java栈则总是存储该线程中java方法调用的状态——包括它的局部变量,被调用时传进来的参数,它的返回值,以及中间结果等等。
- 涉及到并发的一些关键字理解
- 并发编程中涉及到的一些概念
- web并发的一些理解。
- 并发编程之join关键字的理解
- 通信涉及到的一些关键因素
- shell在xcode中涉及到的关键字
- 对Java关键字synchronized的一些理解
- 关于yield关键字的一些理解
- 关于yield关键字的一些理解
- 一些关于Java常用关键字的理解
- 关于java synchronized关键字的一些理解
- Java一些关键字的理解概括
- 关于并发,多线程的一些理解
- 关于“const ”关键字和“static”关键字用法的一些理解
- Java并发编程之volatile关键字的理解
- Java并发编程之volatile关键字的理解与使用
- 关于java中多态的理解,涉及到内存空间
- mobile 开发所涉及到的一些方面
- 机器学习实战笔记(Python实现)-03-朴素贝叶斯
- erlang调用c\c++动态链接库
- 欢迎使用CSDN-markdown编辑器
- awk 先按行相减,然后排序输出
- 高斯混合模型GMM
- 涉及到并发的一些关键字理解
- CSS3 盒模型尺寸计算
- 机器学习-tensorflow入门教程一——基础内容
- FreeRTOS任务创建
- Python 教程 1-3 Input语句
- ICPC2017网络赛(沈阳)1012&HDU6205Card(最大子段和)
- Servers
- 指针
- HDU 6201 transaction transaction transaction【树形DP||SPFA最长路】