线程
-
进程和线程对比
1,开进程的开销远远大于开线程 import time from threading import Thread from multiprocessing import Proce…
-
redis分布式锁
redis分布式锁的发展过程。 单机情况下,可以使用synchronized(obj),来保证同步代码块。 代码如下: 其原理是:每个Java对象都可以关联一个Monitor对象…
-
Redis的多线程与IO多路复用
标题说的多线程与通常说的redis是单线程不一致,具体原因如下: Redis的3.X以前的版本是单线程的,4.X加入了异步删除,不是严格意义上的单线程,最新版本6.X告别了大家…
-
面试题总结
Java中,4种对象引用之间的区别 强引用:只要引用关系还在,对象永远不会被回收 软引用:非必须存活的对象,JVM会再内存溢出前对其进行回收 弱引用:非必须存活的对象,不管内存是否…
-
3.25软工学习周报
学习第四个礼拜,主要熟悉了 java 的高级应用线程:进程是运行中的应用程序,是一套顺序执行的指令,每个进程都有自己独立的内存空间。线程是一个并发执行的顺序流,一个进程包括多个顺序…
-
王者并发课-铂金6:青出于蓝-Condition如何把等待与通知玩出新花样
欢迎来到《王者并发课》,本文是该系列文章中的第19篇。 在上一篇文章中,我们介绍了阻塞队列。如果你阅读过它的源码,那么你一定会注意到其中的condition变量以及它在读写队列时的…
-
王者并发课-铂金7:整齐划一-CountDownLatch如何协调多线程的开始和结束
欢迎来到《王者并发课》,本文是该系列文章中的第20篇。 在上一篇文章中,我们介绍了Condition的用法。在本文中,将为你介绍CountDownLatch的用法。CountDow…
-
王者并发课-铂金8:峡谷幽会-看CyclicBarrier如何跨越重峦叠嶂
欢迎来到《王者并发课》,本文是该系列文章中的第21篇,铂金中的第8篇。 在上一篇文章中,我们介绍了CountDownLatch的用法。在协调多线程的开始和结束时,CountDown…
-
王者并发课-铂金9:互通有无-Exchanger如何完成线程间的数据交换
欢迎来到《王者并发课》,本文是该系列文章中的第22篇,铂金中的第9篇。 在前面的文章中,我们已经介绍了ReentrantLock,CountDownLatch,CyclicBarr…
-
进程与线程
前言 主程序为单进程单线程,当遇到了某些比较耗时的操作时,会卡住执行流程,非常影响效率。而引进多进程或多线程,则能在一定程度上缓解这种情况。 多进程 多线程 多线程 import …