一点开心事

并发编程 - 解决原子性问题

1.何为原子性?CPU层面一个或者多个操作在CPU执行的过程中不被中断的特性,称为“原子性”。long型变量在32位机器上读写可能出现的诡异

全站最帅😎 全站最帅😎 发布于 2021-08-25

并发编程 - Java内存模型

何为Java内存模型?现代计算机体系大部是采用的对称多处理器的体系架构。每个处理器均有独立的寄存器和缓存多个处理器可同时执行同一进程中的不同

全站最帅😎 全站最帅😎 发布于 2021-08-17

并发编程:实现简单的超时数据库线程池

基本原理就是通过wait()和notifiyAll()的一个简单的消费者生产者模型实现。话不多说先上代码:SqlConnectImpl类简单的实现了jdk的Connection接口,这里fetchConnection()拿到一个当前对象,也就是SqlConnectImpl。因为是一个demo,所以大

全站最帅😎 全站最帅😎 发布于 2020-04-22

并发编程:synchronized的应用

synchronized锁的对象包括:this临界资源对象Class类对象。synchronized除了保障原子性外,其实也保障了可见性。因为synchronized无论是同步的方法还是同步的代码块,都会先把主内存的数据拷贝到工作内存中,同步代码块结束,会把工作内存中的数据更新到主内存中,这样主内存

全站最帅😎 全站最帅😎 发布于 2020-04-20

并发编程:线程基础和协作

线程常用的方法如图所示,下面我将通过实例一一讲解:start()方法,Thread的类中启动线程的方法,也是Java对线程的抽象:顺便说一下start()方法和run()方法的区别:star()方法真正启动了一个线程,查看源码我们发现调用了start0()方法,这是一个native方法。run()方

全站最帅😎 全站最帅😎 发布于 2020-04-17