![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
ly364434006
这个作者很懒,什么都没留下…
展开
-
Java内存分配
栈、堆、常量池虽同属Java内存分配时操作的区域、但是使用范围和功用却大不相同、本文将深入Java核心、详细讲解Java内存分配方面的知识. Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域: ...原创 2011-04-30 09:00:28 · 85 阅读 · 0 评论 -
synchronized关键字
synchronized 两种用法:修饰方法、修饰块 作用都是一样。 如果一个线程执行到了synchronized修饰的代码、那么他需要获取当前实例锁才能执行,如果当前实例锁被其他线程拥有,那么就只能等待拥有该实例锁的线程执行完成后才能执行该块代码. 锁分两种:实例锁(synchronized)和对象锁(static synchronized) synchronized是对类的当前实...原创 2012-10-27 01:26:46 · 61 阅读 · 0 评论 -
JMM简介
JMM:Java Memory Model(Java内存模型),围绕着在并发过程中如何处理可见性、原子性、有序性这三个特性而建立的模型。 可见性:JMM提供了volatile变量定义、final、synchronized块来保证可见性。例如:线程a在将共享变量x=1写入主内存的时候,如何保证线程b读取共享变量x的值为1,这就是JMM做的事情。JMM通过控制主内存与每个线程的本地内存之间的交互...原创 2013-02-20 23:19:10 · 402 阅读 · 0 评论 -
并发编程之Volatile关键字
当一个变量被修饰成volatile之后,它就具备了一个特性-可见性,即保证该变量对所有的线程是可见的。 boolean shutdownRequested; public void shutdown(){ shutdownRequested=true; } public void doWork(){ while(!shutdownRequested){ ...原创 2013-02-22 22:15:33 · 84 阅读 · 0 评论