![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java并发编程
文章平均质量分 94
Java并发编程
叶大师2018
这个作者很懒,什么都没留下…
展开
-
Java并发编程实践学习笔记(三)——共享对象之发布和异常
(publishing)一个对象的意思是:使对象能够在当前作用域之外的代码中使用。例如,将一个指向该对象的引用保存到其他代码可以访问的地方,或者在某一个非私有的方法中返回该引用,或者将引用传递到其他类的方法中。发布内部状态可能会破坏封装性,并使程序难以维持不变性条件。例如,如果在对象构造完成之前就发布该对象,就会破坏线程安全性。当某个不应该发布的对象被发布时,这种情况就成为(escape)。简而言之,发布就是把对象暴露给他人使用,这就是为什么会需要用到封装;原创 2023-05-10 16:07:39 · 692 阅读 · 0 评论 -
单例模式之懒汉式
在上篇文章中,我们讲了单例模式中的饿汉式,今天接着来讲懒汉式。原创 2023-03-10 15:41:36 · 2285 阅读 · 0 评论 -
Java并发编程实践学习笔记(三)——共享对象之可见性
在单线程环境中,如果向某个变量写入值,在没有其他写入操作的情况下读取这个变量,那么总能得到相同的值。然而,当读写操作在不同的线程中执行时,情况却并非如此。通常,我们无法确保执行读操作的线程能适时的看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。运行是没问题的,正常输出42,但不代表这个程序是O看到,在代码中,主线程和读线程都将访问共享变量 ready 和 number。原创 2023-05-09 17:12:28 · 629 阅读 · 0 评论 -
单例模式之饿汉式
饿汉式单例这种方式简单,也比较常用,在类创建的同时已经创建好一个静态的对象供系统使用,执行效率高。但这种方式下,因为还未调用对象就已经创建,造成资源的浪费,容易产生垃圾对象。原创 2023-03-06 11:10:55 · 2303 阅读 · 0 评论 -
synchronized用法详解
目录1.线程安全问题2.使用同步机制管理共享数据3.synchronized原理概述3.1 同步代码块的实现原理3.2 同步方法的原理4.synchronized的使用4.1同步代码块 4.2同步普通方法4.3同步静态方法5.synchronized的不可中断性与可重入性5.1 不可中断性5.2 可重入性6.使用synchronized的注意事项6.1注意synchronized同步块的粒度 6.2 对 String 加锁 6.3 对Integer、Long、Short等包装类加锁 线程允许程原创 2022-06-01 17:06:14 · 19872 阅读 · 6 评论