
java
文章平均质量分 54
iteye_8352
这个作者很懒,什么都没留下…
展开
-
SoftReference的用法
SoftReference的语义就是当内存不够用的时候,GC会回收SoftReference所引用的对象。所以,在memory sensitive的程序中将某些大型数据设置成SoftReference再合适不过了。创建一个SoftReference:Object obj = new Object(); SoftReference softRef = new SoftRef...原创 2011-05-21 16:43:42 · 134 阅读 · 0 评论 -
ConcurrentModificationException主要原因及处理方法
[b][size=medium][color=darkred]转:[/color][/size][/b] 当使用 fail-fast iterator 对 Collection 或 Map 进行迭代操作过程中尝试直接修改 Collection / Map 的内容时,即使是在单线程下运行, java.util.ConcurrentModificationException 异常也将被抛出。...原创 2011-01-12 12:18:22 · 166 阅读 · 0 评论 -
如何让两个线程交替运行
之前碰到过这样的问题:同时启动两个线程,那么如何让两个线程交替执行呢?public class ThreadWaitTest { public static class StarterThread implements Runnable { private Object lock = null; public StarterThread(Object lock) {...原创 2013-09-26 14:28:36 · 824 阅读 · 0 评论 -
synchronized的用法和理解
synchronized为同步的意思,一般用在多线程并发,操作同一块数据,为避免数据混乱,而加上此关键字,以保证同一对象的此方法在同一时刻只能有一个在执行。 synchronized代码的执行,必须获取相应对象的锁,否则代码将处于阻塞中,无法执行。 synchronized的用法有两种: 1:synchronized方法 ...原创 2013-09-26 14:44:13 · 170 阅读 · 0 评论 -
java thread.setDaemon的使用
Thread.setDaemon()方法,从文档中我们可以发现,意思为后台线程、守护线程。一开始我对后台线程不是太理解,觉的Thread本身就是在不影响其他操作的情况下运行的,这就是后台线程。后来才发现,重点在于守护线程。下面来说一下,什么是守护线程: thread = new Thread(this); thread.setDaemon(true); ...原创 2013-09-26 15:00:08 · 267 阅读 · 0 评论 -
Runnable创建线程的优势
在java中,创建线程可以用Thread,也可以用Runnable。 我们可以用一个Runnable实例给多个Thread来初始化线程,这样,当一个线程改变Runnable中的数据时,另外线程也能知道。但如果直接用Thread实例化多个线程,则没有这个效果!...原创 2013-09-26 19:22:46 · 261 阅读 · 0 评论 -
java内存管理机制
在java中,内存分了静态存储区,栈内存,堆内存三种1.静态存储区:代码在编译时就已分配好,如静态常量数据2.栈内存:用于存放各种原始数据构造的局部变量,当程出退出临时变量的作用域时,内存会被自动释放3.堆内存:用于存放以new方式创建的对象和数组,其回收机制依赖于java的垃圾回收 堆和栈的优缺点 堆的优势是可以动态分配内存大小,生存期也不必事先告诉编译器,因...原创 2013-10-14 17:19:31 · 168 阅读 · 0 评论 -
HashMap遍历方法及比较
Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.En...原创 2013-03-12 22:40:35 · 99 阅读 · 0 评论