volatile关键字,原子操作,线程安全,死锁

来源:互联网 发布:图片文字编辑软件 编辑:程序博客网 时间:2024/04/29 14:04

volatile 关键字:

1java允许各线程保存共享成员变量的私有副本,线程进入或离开同步代码块时与共享成员变量的原始值进行比较。但有了volatile关键字后,代表该成员变量不能保存私有副本,直接与成员变量交互。从共享内存中读取该值,发生变化时,强迫存到内存。不同线程的共享成员变量是同一个值 

但屏蔽了必要的代码优化功能,效率较低

2)对变量的写操作不依赖于其当前值

 

原子操作:

操作从开始到结束,中间不会有任何线程切换操作,用volatile关键字

 

线程安全:

使用共享资源时,保证资源任何时候都是原子的,资源就是线程安全;若需要用户采取同步措施来保证访问的共享资源,则资源不是线程安全。

 

死锁:

当一个线程等待另一个线持有的锁,而这个线程又在等待前一个线程所持有的锁,陷入无休止的相互等待的状态,

 

 

自定义类加载器在Java嵌入式浏览器和小应用程序浏览器中起着重要的作用

线程:在java虚拟机进程环境中,以线程的方式运行所有程序代码

Java虚拟机自动为每个执行的java应用程序简历默认的main线程(主线程)

  创建线程的方法: 

  extends Runnable implements Thread 

  Implements Runnable

0 0
原创粉丝点击