12 2022 档案

摘要:一、insert调优 1、插入多条数据时最好批量插入 (但一般不超过一千条) 2、手动提交事务,多条语句一起提交 start transaction; insert into table values (),(),(); insert into table values (),(),(); inse 阅读全文
posted @ 2022-12-30 23:47 wwwwwwwty 阅读(157) 评论(0) 推荐(0) 编辑
摘要:重拾mysql,记点新知识 1、关于外键约束,项目中一直少用外键约束,是怕删除的时候删除不掉,原来是可以设置的,关于外键约束有四种更新行为 NO ACTION:当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许更新、删除。(与RESTRICT一致) RESTRICT:当在父 阅读全文
posted @ 2022-12-29 00:32 wwwwwwwty 阅读(36) 评论(0) 推荐(0) 编辑
摘要:AbstractQueuedSynchronizer 抽象的队列同步器 AQS是volatile+CAS机制实现的锁模板,保证了代码的同步性和可见性。AQS定义了一套多线程访问共享资源的同步器框架,封装了线程阻塞等待挂起,解锁其他线程的逻辑, AQS子类只需要根据状态变量,判断是否可获取锁,是否释放 阅读全文
posted @ 2022-12-27 10:41 wwwwwwwty 阅读(56) 评论(0) 推荐(0) 编辑
摘要:ReentrantReadWriteLock 读写锁 定义:一个资源能够被多个读线程访问,或者被一个写线程访问,但是不能同时存在读写线程,只有在读多写少的情况下,读写锁才有较高的性能体现。 缺点: 1、写锁饥饿问题,如果读锁特别多,写锁特别少,会导致写锁抢不到资源 2、锁降级 锁降级:如果一个线程持 阅读全文
posted @ 2022-12-27 00:22 wwwwwwwty 阅读(146) 评论(0) 推荐(0) 编辑
摘要:Future Future接口提供了异步并行计算的功能,可以为主线程开一个分支任务,专门为主线程处理耗时和费力的复杂任务。 (FutureTask)实现类满足三个特点,1,多线程 2,有返回 3,异步任务 Future(FutureTask) 优缺点 优点:future+线程池异步多线程任务配合,能 阅读全文
posted @ 2022-12-24 17:20 wwwwwwwty 阅读(70) 评论(0) 推荐(0) 编辑
摘要:三种锁的优缺点对比 偏向锁的几个特点: 1、撤销偏向需要将持锁线程升级为轻量级锁,这个过程中所有线程需要暂停(STW) 2、偏向锁的对象头会记录当前线程的id 3、访问对象的hashcode也会撤销偏向锁,因为hashcode存在对象头中,占用了储存当前偏向线程id的位置 4、如果对象被多个线程访问 阅读全文
posted @ 2022-12-24 17:19 wwwwwwwty 阅读(164) 评论(0) 推荐(0) 编辑
摘要:手写自旋锁 public class SpinLockDemo { AtomicReference<Thread> atomicReference = new AtomicReference<>(); public void lock(){ Thread thread = Thread.curren 阅读全文
posted @ 2022-12-21 20:18 wwwwwwwty 阅读(42) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示