• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






唯💗独爱你

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理
上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 45 下一页

2023年3月14日

原子性&AtomicInteger
摘要: volatile关键字不能保证原子性,synchronized可以保证原子性,但是比较消耗资源。 Atomic工具类可以安全有效的解决原子性问题 基本用法: /** * Atomic工具类可以有效安全的解决数据的原子性问题 */ public class AtomicDemo { public st 阅读全文
posted @ 2023-03-14 10:56 唯💗独爱你 阅读(28) 评论(0) 推荐(0)
 
volatile解决获取共享数据的问题
摘要: 1、堆内存是唯一的,每一个线程有自己的线程栈; 2、每一个线程在使用堆内存中的变量时,会拷贝一份变量副本,然后使用变量副本,这样运行的会更快一点; 3、在线程中,每一次使用都是从变量的副本中获取。 综上所述,在线程运行时可能会出现问题:如果A线程修改了堆中的共享变量的值,那么其它线程不一定能及时使用 阅读全文
posted @ 2023-03-14 09:55 唯💗独爱你 阅读(20) 评论(0) 推荐(0)
 

2023年3月13日

创建指定上限的线程池_ThreadPoolExcutor
摘要: public class ThreadPoolExcutorDemo { public static void main(String[] args) { // 参数1:核心线程数量 不能小于0 // 参数2:最大线程数量 不能小于0并大于等于核心线程数量 // 参数3:空闲线程最大存活时间 不能小 阅读全文
posted @ 2023-03-13 22:13 唯💗独爱你 阅读(21) 评论(0) 推荐(0)
 
线程池
摘要: 基本原理: import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class ExecutorsDemo { // 创建线程池的两种方法 // 1、Executors.ne 阅读全文
posted @ 2023-03-13 21:44 唯💗独爱你 阅读(22) 评论(0) 推荐(0)
 
线程状态
摘要: 阅读全文
posted @ 2023-03-13 20:36 唯💗独爱你 阅读(14) 评论(0) 推荐(0)
 
阻塞队列实现等待唤醒机制
摘要: BlockingQueue的核心方法: put(anObject):将参数放入队列,如果放不进去会阻塞; take():取出第一个数据,如果取不到会阻塞; 常见的BlockingQueue: ArrayBlockingQueue:底层是数组,有界; LinkedBlockingQueue:底层是链表 阅读全文
posted @ 2023-03-13 17:05 唯💗独爱你 阅读(51) 评论(0) 推荐(0)
 
生产者消费者设计模式
摘要: public class Demo { /* 生产者步骤: * 1、判断桌子上是否有汉堡包 * 2、如果有就等待,如果没有,就生产 * 3、把生产的汉堡包放到桌子上 * 4、唤醒消费者开吃 * * 消费者步骤: * 1、判断汉堡包剩余数量,如果没有了,跳出线程 * 2、判断桌子上是否有汉堡包 * 3 阅读全文
posted @ 2023-03-13 16:02 唯💗独爱你 阅读(25) 评论(0) 推荐(0)
 
Lock锁
摘要: import java.util.concurrent.locks.ReentrantLock; public class MyRunnable implements Runnable { private static int ticket = 100; private static Reentra 阅读全文
posted @ 2023-03-13 11:06 唯💗独爱你 阅读(30) 评论(0) 推荐(0)
 
线程安全_同步方法
摘要: 同步方法就是把synchronized加到方法上。 格式:修饰符 synchronized 返回值类型 方法名(形式参数){ } 同步代码块和同步方法的区别: 1、同步代码块可以锁住指定代码。同步方法是锁住方法中所有代码; 2、同步代码块可以指定锁对象,同步方法不能指定锁对象,同步方法的锁对象是th 阅读全文
posted @ 2023-03-13 10:48 唯💗独爱你 阅读(23) 评论(0) 推荐(0)
 
线程安全_同步代码块
摘要: 同步代码块:解决多线程操作同一个数据的问题,只要有一个线程进入同步代码块中执行代码,锁就会关闭,其它线程必须等待里面的线程执行完毕后才能进去。 格式: synchronized (任意锁对象) { 操作共享数据的代码 } //注意:synchronized中的锁对象必须是唯一的 好处:解决了多线程的 阅读全文
posted @ 2023-03-13 10:07 唯💗独爱你 阅读(15) 评论(0) 推荐(0)
 
上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 45 下一页