首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

线程根本

2012-08-17 
线程基本Java 多线程程序设计要点:http://www.diybl.com/course/3_program/java/javajs/20100522/203539.h

线程基本

Java 多线程程序设计要点:

http://www.diybl.com/course/3_program/java/javajs/20100522/203539.html?

?

?

所谓线程安全无非是要控制多个线程对某个资源的有序访问或修改。总结java的内存模型,要解决两个主要的问题:可见性和有序性

?

方法1:使用ThreadLocal

?ThreadLocal与synchronized多线程并发访问区别1

?

http://www.easy518.com/bbs/?p=23

?

?

?

synchronized(core){ ?// 锁住对象!

core.put();

}

?

?

public synchronized void ?put(){// 锁住对象方法!

if (count>=3) {

System.out.println("生产者被阻塞");

try {

this.wait();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return;

}

count++;

this.notify();

}

?

?

?

java.lang.IllegalMonitorStateException

首先你要了解这个异常为什么会抛出,这个异常会在三种情况下抛出:1>当前线程不含有当前对象的锁资源的时候,调用obj.wait()方法;2>当前线程不含有当前对象的锁资源的时候,调用obj.notify()方法。3>当前线程不含有当前对象的锁资源的时候,调用obj.notifyAll()方法。
由线程引发的内存模型分析:
http://www.blogjava.net/qileilove/archive/2011/09/22/359262.html
http://jameswxx.iteye.com/blog/806968
http://guibin.iteye.com/blog/1172731
http://wenku.baidu.com/view/4afaaf2e453610661ed9f4dc.html
 

热点排行