![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA线程
weiweishouwang
这个作者很懒,什么都没留下…
展开
-
JAVA线程01:线程安全与不安全
在JDK API中,总会发现一些类说明写着,线程安全或者线程不安全。如StringBuffer文档中写到“可将字符串缓冲区安全地用于多个线程可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方法调用顺序一致......从 JDK 5 开始,为该类补充了一个单个线程使用的等价类,即StringBuilder。与该类相比,通...原创 2015-01-23 11:12:36 · 33 阅读 · 0 评论 -
JAVA线程02:可见性和有序性
Java线程有两个特性,可见性和有序性。多个线程之间是不能直接传递数据交互的,它们之间的交互只能通过共享变量来实现。 可见性:当一个对象在多个内存中都存在副本时,如果一个内存修改了共享变量,其它线程也应该能够看到被修改后的值。拿上篇博文中的例子来说明,在多个线程之间共享了PrintString类的一个对象,这个对象是被创建在主内存(堆内存)中,每个线程都有自己的工作内存(线程栈...2015-01-23 13:27:31 · 36 阅读 · 0 评论 -
JAVA线程03:synchronized关键字
展示一下线程同步问题,创建两个线程,执行同一个对象的输出方法。 public class PrintChar { public void output(String name) { try { for (int i = 0; i < name.length(); i++) { System.out.print(name.charAt(i)); ...原创 2015-01-23 14:05:22 · 42 阅读 · 0 评论 -
JAVA线程04:所对象Lock
Lock是java.util.concurrent.locks包下的接口,Lock 实现提供了比使用synchronized 方法和语句可获得的更广泛的锁定操作,它能以更优雅的方式处理线程同步问题。 一,ReentrantLock子类 一个可重入的互斥锁 Lock,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁相同的一些基本行为和语义,但功能更...原创 2015-01-23 14:46:26 · 51 阅读 · 0 评论