并发编程
文章平均质量分 57
Java并发编程学习
wmxz520
这个作者很懒,什么都没留下…
展开
-
Java之线程总结一
Java之线程总结一 线程实现方式 官方文档说的是实现线程的方式有两种;本质上只有一种,就是构造Thread类,而实现线程执行单元的方式有两种: 继承Thread类,重写run方法; 实现Runnable接口的run方法,把Runnable接口的实现类传递给Thread; 思考题,同时使用上面说的两种方式执行线程的结果是什么样的?也就是以下代码的执行结果是? public class BothRunnableThread { public static void main(String[] a原创 2023-03-11 18:21:05 · 289 阅读 · 0 评论 -
Java线程之死锁案例
死锁发生的条件 1、互斥条件:任意时刻该资源只由一个线程占用 2、请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放 3、线程已获得的资源在末使用完之前不能被其他线程强行剥夺,只有自己使用完毕后才释放资源。 4、循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系 避免死锁只需破坏以上4个条件之一即可。 如果资源可以共享就不会发生死锁。但是有些资源根本不能同时访问,比如打印机等临界资源,所以破坏互斥条件不太可行。 死锁代码 public class DeadLock { p原创 2022-04-14 19:36:16 · 800 阅读 · 0 评论 -
使用ThreadLocal存储用户信息,方便全局获取
使用ThreadLocal存储用户信息,方便全局获取。原创 2023-01-02 17:27:25 · 607 阅读 · 0 评论 -
JUC之线程池
线程池 线程池概述和架构 线程池中类的关系如下: 线程池的使用 Executors.newFixedThreadPool() 创建一个指定大小的线程池,超出的任务会在阻塞队列中等待; public class ThreadPoolDemo1 { public static void main(String[] args) { ExecutorService fixedThreadPool = Executors.newFixedThreadPool(5);原创 2022-04-17 15:07:36 · 442 阅读 · 0 评论