
多线程
文章平均质量分 88
主要涵盖操作系统多线程的相关问题和知识点
Money、坤
人间烟火 各有遗憾 今天比昨天好就有希望
展开
-
【Java基础】全面讲解Java中的各种锁
1. 概念synchronized是关键字,用于解决多个线程间访问资源同步性问题,保证其修饰的方法或代码块任意时刻只能有一个线程访问synchronized 它可以把任非 NULL 的对象当作锁。他属于独占式悲观锁,同时属于可重入锁。2. 作用范围线程A调用一个实例对象非静态Synchronized方法,允许线程B调用该实例对象所属类的静态s方法而不会发生互斥,前者锁的是当前实例对象,后者锁的是当前类作用于同步代码块 锁住的当前对象,进入同步代码块前需要获得对象的锁3. 实现方式Synchronized原创 2022-08-21 13:02:09 · 469 阅读 · 0 评论 -
【详解】线程池及其自定义线程池的实现
1. 为什么使用线程池?线程池是运用场景最多的并发框架,几乎所有需要一步或者并发执行任务的程序都可以使用线程池。使用线程池一般有以下三个好处:①降低资源的消耗,通过重复利用已经创建的线程降低线程创建和销毁造成的消耗。②提高相应速度,当任务到达的时候,任务可以不需要等到线程创建就能立刻执行。③提高线程的可管理性,线程是稀缺资源,使用线程池可以统一的分配、调优和监控。2. Java中的线程池ThreadPool线程池参数介绍1)corePoolSize(线程池的基本大小):当提交一个任务到线程池时,线程原创 2022-07-08 12:41:21 · 2159 阅读 · 0 评论 -
【多线程】线程安全保护机制
在JDK中,JAVA语言为了维持顺序内部的顺序化语义,也就是为了保证程序的最终运行结果需要和在单线程严格意义的顺序化环境下执行的结果一致,程序指令的执行顺序有可能和代码的顺序不一致,这个过程就称之为指令的重排序。总结,Lock锁相对synchronized使用更加灵活,它使用锁的策略包括可以一直请求锁,也可以尝试请求锁,可以使用带超时的尝试请求锁,还可以带中断的锁,使用lock更加灵活。你会发现,上述代码在正常情况下应该输出是0,但某些时候会出现和理想结果不一致的情况,此时,就表示线程出现了安全问题。...原创 2022-07-03 18:08:27 · 1321 阅读 · 0 评论