java
p_max
这个作者很懒,什么都没留下…
展开
-
java 内存模型
java模型规定:所有变量都要存储在主内存(Main Memory)中,每一个线程都有自己的工作内存(Working Memory),线程中的工作内存中保存了被该线程使用的变量的主内存副本拷贝,线程对变量的操作(读取,复制)都必须在工作内存进行,而不能直接读写内存中的变量。而不同线程之间也无法直接访问对方工作内存中的变量,线程间变量的传递均需要通过主内存完成。学过操作系统的都应该明白,高速原创 2014-11-30 14:07:48 · 568 阅读 · 0 评论 -
java并发编程(二)对象的共享
接昨天 《java并发编程(一)线程安全性》 发布和逸出:“publish”,发布一个对象的意思是:使对象能够在当前作用域之外的代码中使用。(Publishingan object means making it available to code outside of its current scope )。发布内部状态可能破坏封装性,并使得程序难以维系不变性条件。如果对象在构原创 2014-12-01 15:36:17 · 597 阅读 · 0 评论 -
java并发编程(一)线程安全性
java 并发编程 不是什么高深技术,程序设计时,将并发问题考虑进去,可以增强程序的健壮性。If multiple threads access the same mutable state variable without appro-priate synchronization, your program is broken. There are three w原创 2014-11-30 10:29:38 · 784 阅读 · 0 评论 -
java并发编程(三)客户端加锁与组合
客户端加锁:java为线程安全提供了一套安全的集合类操作 在java.util.Collections中,在多线程下能 安全的CRUD,但是应该注意,仅是对几何类进行同步,下面看一个实例。若没有则添加实例:public class ListHelper { public List list = Collections.synchronizedList(new ArrayLi原创 2014-12-02 12:53:59 · 2720 阅读 · 1 评论 -
java 垃圾回收机制
很多教科书中提到,判断一个对象是否应该存活,是使用程序计数器的,对象有一个引用计数器,每当一个地方引用,计数器就加1,引用失效,计数器减1,当计数为0,该对象可以被回收。引用计数器算法的实现简单,判定效率也很高,但是,java虚拟机里面没有选用计数器算法来管理内存,主要原因是它很难解决对象之间的循环引用问题。public class TestGC { public Object原创 2015-04-12 16:17:17 · 448 阅读 · 0 评论 -
synchronized几种形式及其用途
java并发编程过程中,常用到同步关键字synchronized,现在分析下synchronized在编程过程中的几种用途。在方法体上public synchronized void method1() { } 一次同时只能有一个线程能调用方法,其他线程只能等待。在方法内部1Integer mutex = 10;public void method1() { synchron原创 2015-07-28 19:04:46 · 752 阅读 · 0 评论 -
java在实际过程中遇到的一些小问题( 不断更新)
1. Arrays.asList()用在基本数据类型:int[] o1 = new int[2];int[][] o2 = new int[][]{{4,5},{3,6}}; List<int[]> xx = Arrays.asList(o1);List<int[]> xxx = Arrays.asList(o2); Arrays.asList(T… a),所以当asList方法原创 2015-08-06 01:16:30 · 440 阅读 · 0 评论