随笔分类 -  多线程

上一页 1 2 3 4 下一页

Unsafe控制ConcurrentHashMap内并发数组元素的可见性
摘要:出自:https://www.cnblogs.com/silyvin/p/9106613.html https://mp.weixin.qq.com/s?__biz=MzIwMzY1OTU1NQ==&mid=2247484057&idx=1&sn=c5fb63c68203001fa3a0545cef 阅读全文

posted @ 2021-06-29 15:51 silyvin 阅读(124) 评论(0) 推荐(0)

为什么内存锁在有事务切面的情况下会形同虚设 隔离级别与事务
摘要:1 事务里面加锁失效 myorm【重点】 25 2020.7.17 这就要求在事务代理外侧加锁 2 rr级别即使提交也不可见导致死循环 其它相关:jdk与mysql的cas乐观锁 阅读全文

posted @ 2021-06-07 16:08 silyvin 阅读(62) 评论(0) 推荐(0)

类加载的并发,单例模式,静态资源加载
摘要:1 全限定类在同一个类加载器只能加载一次,意味着static对象及代码块只一次,为单例之依据 如果并发发生,则阻塞 故类的加载不存在多线程,因为只执行一次,其他线程等着加载线程,由jvm来保证线程安全性 public class ByLoad { static { try { System.out. 阅读全文

posted @ 2020-10-09 23:30 silyvin 阅读(412) 评论(0) 推荐(0)

线程池的原理
摘要:本质就是利用无限循环run的thread➕BlockingQueue手写阻塞队列 2020.12.6 补充 务必注意线程池的有效shutdown机制,这关系到线程池被有效回收,具体可见:匿名野线程池导致oom 2021.3.9 本例子中,当没有任务时,并没有用BlockingQueue.take阻塞 阅读全文

posted @ 2020-04-27 23:43 silyvin 阅读(214) 评论(0) 推荐(0)

synchroned原理与对象头(yet)
摘要:结合对象头 https://mp.weixin.qq.com/s/KFgAY3g4tfuaKumVswID4A 阅读全文

posted @ 2020-04-25 23:45 silyvin 阅读(223) 评论(0) 推荐(0)

CompletableFuture(yet)
摘要:https://www.jianshu.com/p/b3c4dd85901e 回调函数比较通用的解释是,它是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事 阅读全文

posted @ 2020-04-10 15:14 silyvin 阅读(450) 评论(0) 推荐(0)

模拟future
摘要:import java.util.concurrent.ExecutionException; abstract public class MyFuture { private volatile Object returnVal; private volatile Boolean isExcepti 阅读全文

posted @ 2020-04-10 14:18 silyvin 阅读(106) 评论(0) 推荐(0)

守护线程会不会执行finally?默认情况new thread怎么样确定守护状态?
摘要:finally throw return 中,线程的状态及interrupt 守护线程在退出的时候并不会执行finnaly块中的代码 线程池造成服务器内存泄漏 中所述,新建线程默认上使用建立线程时的当前线程所处的守护状态 本文予以验证: falsefalse守护线程2的try会不会执行?守护线程2的 阅读全文

posted @ 2019-12-17 00:10 silyvin 阅读(596) 评论(0) 推荐(0)

notify 与 nofityall,notify造成死锁实践
摘要:package multilock.deadlock; /** * https://www.cnblogs.com/silyvin/p/11747303.html * Created by joyce on 2019/10/27. */ public class NotifyDeadLock { p 阅读全文

posted @ 2019-10-27 13:38 silyvin 阅读(585) 评论(0) 推荐(0)

tcp(netty)的调用同步化(异步阻塞)及与http协议、浏览器关系【重点】
摘要:1 https://segmentfault.com/a/1190000019152276?utm_medium=referral&utm_source=tuicool 其实在编程领域,异步的场景还是挺多的,比如 TCP 协议本身就是异步的,我们工作中经常用到的 RPC 调用,在 TCP 协议层面, 阅读全文

posted @ 2019-09-11 14:45 silyvin 阅读(3582) 评论(0) 推荐(0)

Integer String 对象作为锁的注意事项
摘要:Integer vs int 由一个多线程共享Integer类变量问题引起的。。。 中,解释了为什么锁不住Integer对象,本次我们做一些实践 import java.util.Date; /** * https://www.cnblogs.com/silyvin/p/11475233.html 阅读全文

posted @ 2019-09-06 15:49 silyvin 阅读(1200) 评论(0) 推荐(0)

thread.join的本质
摘要:Java代码 Java代码 现在说到join,大家都知道join方法的试用场景,就是当我们在A线程调用了线程B.join(),则只有线程A会进入BLOCK(实际是WAITING OR TIMED_WAITING)状态,当线程B执行完成后,A线程才会继续执行 看一下join的实现源码,就会发现,内部也 阅读全文

posted @ 2019-08-18 22:47 silyvin 阅读(217) 评论(0) 推荐(0)

伪共享
摘要:1 引用自:https://www.cnblogs.com/diegodu/p/9340243.html 2.7 Cache Line 伪共享 Cache Line 伪共享问题,就是由多个 CPU 上的多个线程同时修改自己的变量引发的。这些变量表面上是不同的变量,但是实际上却存储在同一条 Cache 阅读全文

posted @ 2019-07-13 13:19 silyvin 阅读(331) 评论(0) 推荐(0)

jdk与mysql的cas乐观锁
摘要:全部过程有两个关键点:violate和本地原子操作 语录: 从内存领域来说这是乐观锁,因为它在对共享变量更新之前会先比较当前值是否与更新前的值一致,如果是,则更新,如果不是,则无限循环执行(称为自旋),直到当前值与更新前的值一致为止,才执行更新。 而Synchronized是一种悲观锁,它认为在它修 阅读全文

posted @ 2019-07-12 10:55 silyvin 阅读(648) 评论(0) 推荐(0)

Java 中 long 和 double 的原子性?
摘要:JVM中对long的操作是不是原子操作? 为什么对long的操作不是原子的? 在硬件,操作系统,JVM都是64位的情况下呢? JVM中对long的操作是不是原子操作? 为什么对long的操作不是原子的? 在硬件,操作系统,JVM都是64位的情况下呢? java中基本类型中,long和double的长 阅读全文

posted @ 2019-02-23 22:49 silyvin 阅读(2055) 评论(1) 推荐(1)

cas中的aba问题解决
摘要:db jdk https://www.cnblogs.com/silyvin/p/9106785.html 当然jdk已经封装好了一个:AtomicStampedReference https://www.cnblogs.com/java20130722/p/3206742.html https:/ 阅读全文

posted @ 2019-01-30 11:00 silyvin 阅读(270) 评论(0) 推荐(0)

多线程超时熔断模型
摘要:1 new Thread B {}.run(); b.join(t); b.inturrupt(); 2 future b b.get(t); catch timeout exception() {b.cancel()}; 3 Thread daemon {sleep(t); b.inturrupt 阅读全文

posted @ 2018-09-16 20:46 silyvin 阅读(507) 评论(0) 推荐(0)

子线程指令重排
摘要:在未使用CountDownLatch前,有出现最后一行 readLogFile 的数据先于前面的代码数据执行插入操作了,故为了确保数据有序性,加入CountDownLatch 性质有点像:https://www.cnblogs.com/silyvin/p/9106641.html 阅读全文

posted @ 2018-08-09 11:50 silyvin 阅读(180) 评论(0) 推荐(0)

tomcat配置与nio,io密集型& cpu密集型
摘要:根据: https://blog.csdn.net/blogofwill/article/details/69568575 https://blog.csdn.net/JustinQin/article/details/79530038 最主要的参数: maxIdleTime:最大空闲时间,超过这个 阅读全文

posted @ 2018-07-30 11:25 silyvin 阅读(709) 评论(0) 推荐(0)

线程的状态及interrupt
摘要:https://mp.weixin.qq.com/s?__biz=MzI4Njc5NjM1NQ==&mid=2247485352&idx=1&sn=175dfedebb2515c075a2f761279ab4ce&chksm=ebd63884dca1b1920b652dae20cda1f2dbcfe 阅读全文

posted @ 2018-07-29 22:11 silyvin 阅读(1967) 评论(0) 推荐(0)

上一页 1 2 3 4 下一页