多线程
全面认识多线程
lijie154388366
这个作者很懒,什么都没留下…
展开
-
线程死锁与解决
产生死锁的条件互斥,共享资源A和共享资源B只能被一个线程占用占有且等待,线程1已经取得共享资源A,在等待共享资源B的时候不释放共享资源A不可抢占,其他线程不能强行抢占线程1占有的资源循环等待,线程1等待线程2占有的资源,线程2等待线程1占有的资源,就是循环等待如何解决死锁重启应用提前规避(破坏死锁条件的一个,互斥是锁的本身一个条件,无法破坏)死锁举例/** * 创建一个账号类 */public class Account { private String accoun原创 2021-11-07 19:19:29 · 170 阅读 · 0 评论 -
线程的基本操作和原理
Thread.join()的使用和原理public class ThreadJoinDemo { private static int x= 0; private static int i= 0; public static void main(String[] args) throws InterruptedException { Thread t1 = new Thread(() -> { x = 1;原创 2021-11-06 16:26:25 · 107 阅读 · 0 评论 -
2021-11-06 【多线程的基本认识】
多线程认识线程的基本认识线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位为什么出现线程1.在多核CPU中,利用多线程可以实现真正意义上的并行执行2.在一个应用进程中,会存在多个同时执行的任务,如果其中一个任务被阻塞,将会引起不依赖该任务的任务也被阻塞,通过对不同任务创建不同的线程去处理,可以提升程序处理的实时性3.线程可以认为是轻量级的进程,所以线程的创建、销毁比进程更快线程的生命周期线程从创建到销毁,一共经历6个状态1. NEW:初始状态,线程被构原创 2021-11-06 11:43:17 · 82 阅读 · 0 评论