lotus

贵有恒何必三更眠五更起 最无益只怕一日曝十日寒

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 184 下一页

2022年12月26日

摘要: /** * rk字符串匹配算法,主要引入了hash的概念, * 利用子串的hash值依次对比主串相应长度的子串hash值 * 并对hash值相同的子串进行匹配对比 */ public class RKSearch { /** * rk算法入口 * @param t 主字符串 * @param p 子 阅读全文
posted @ 2022-12-26 23:27 白露~ 阅读(93) 评论(0) 推荐(0) 编辑

摘要: 文章目录一、前言二、类加载器三、双亲委派机制 1、什么是双亲委派 2、为什么要双亲委派? 四、破坏双亲委派 1、直接自定义类加载器加载 2、跳过AppClassLoader和ExtClassLoader 3、自定义类加载器加载扩展类 4、Tomcat中破坏双亲委派的场景 5、一个比较完整的自定义类加 阅读全文
posted @ 2022-12-26 15:44 白露~ 阅读(2680) 评论(0) 推荐(2) 编辑

摘要: 为什么需要AtomicInteger原子操作类? 对于Java中的运算操作,例如自增或自减,若没有进行额外的同步操作,在多线程环境下就是线程不安全的。num++解析为num=num+1, 明显,这个操作不具备原子性,多线程并发共享这个变量时必然会出现问题。 测试代码如下: public class 阅读全文
posted @ 2022-12-26 01:13 白露~ 阅读(172) 评论(0) 推荐(0) 编辑

2022年12月25日

摘要: 一. 性能对比 阿里开发手册推荐jdk8使用LongAdder替代AtomicLong 示例代码 题目:热点商品点赞计算器,点赞数加加统计,不要求实时精确。50个线程,每个线程100W次,统计总点赞数 比较synchronized、AtomicInteger、AtomicLong、LongAdder 阅读全文
posted @ 2022-12-25 22:56 白露~ 阅读(47) 评论(0) 推荐(0) 编辑

摘要: 1. 概述 AtomicLong通过循环CAS实现原子操作,缺点是当高并发下竞争比较激烈的时候,会出现大量的CAS失败,导致循环CAS次数大大增加,这种自旋是要消耗时间cpu时间片的,会占用大量cpu的时间,降低效率。 那这个问题如何解决呢? JUC给我们提供了一个类,LongAdder, 它的作用 阅读全文
posted @ 2022-12-25 22:49 白露~ 阅读(161) 评论(0) 推荐(0) 编辑

摘要: 一、原子累加器我们都知道,原子整型可以在线程安全的前提下做到累加功能,而今天介绍的LongAdder具有更好的性能 我们先来看原子累加器和原子整型做累加的对比使用: private static <T> void demo(Supplier<T> supplier, Consumer<T> acti 阅读全文
posted @ 2022-12-25 22:41 白露~ 阅读(570) 评论(0) 推荐(0) 编辑

摘要: 面试官:今天我们来聊聊CAS吧?你对CAS了解多少? 候选者:好,CAS的全称为compare and swap,比较并交换 候选者:虽然翻译过来是「比较并交换」,但它是一个原子性的操作,对应到CPU指令为cmpxchg 面试官:好家伙,CPU指令你都知道? 候选者:这没什么,都是背的。 面试官:… 阅读全文
posted @ 2022-12-25 22:12 白露~ 阅读(98) 评论(0) 推荐(0) 编辑

摘要: 目录 CAS简介 CAS思路 CAS使用场景 CAS问题 总结 CAS简介 CAS的英文全称是Compare-And-Swap,意思就是比较并交换,他是原子类的底层原理,同时也是乐观锁的原理,CAS的特点是避免使用互斥锁,当多个线程同时更新同一个变量时,只有一个线程可以更新成功,其他的线程都会更新失 阅读全文
posted @ 2022-12-25 21:59 白露~ 阅读(182) 评论(0) 推荐(0) 编辑

摘要: UncaughtExceptionHandler在 Thread API 中提供了 UncaughtExceptionHandler ,它能检测出某个线程由于未捕获的异常而终结的情况,能有效地防止线程泄漏问题当一个线程由于未捕获异常而退出时, JVM 会把这个事件报告给应用程序提供的 Uncaugh 阅读全文
posted @ 2022-12-25 15:08 白露~ 阅读(174) 评论(0) 推荐(0) 编辑

2022年12月23日

摘要: https://zhuanlan.zhihu.com/p/431240843 1 递归算法 1.1 算法策略 1.2 适用场景 1.3 使用递归算法求解的一些经典问题 DOM树为例 2 分治算法 2.1 算法策略 2.2 适用场景 2.3 使用分治法求解的一些经典问题二分查找 3 贪心算法 3.1 阅读全文
posted @ 2022-12-23 23:48 白露~ 阅读(101) 评论(0) 推荐(0) 编辑

上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 184 下一页