摘要:
区别 两个都是接口,但是 Runnable 方法中 run() 没有声明异常且没有返回值,而 Callable 中 call() 声明了异常且有返回值;(意味着使用 Runnable 需要自己处理异常)通过 Callable 创建线程需要一个辅助类 FutureTask 实例化对象来接收线程执行完毕 阅读全文
posted @ 2021-08-16 22:54
豆本豆红枣豆奶
阅读(19)
评论(0)
推荐(0)
摘要:
synchronized 膨胀/降级 基本流程 synchronized 不仅能够自动升级,还能自动降级!!! synchronized 不仅能够自动升级,还能自动降级!!! synchronized 不仅能够自动升级,还能自动降级!!! 其他优化 锁消除 编译器/JVM 某个代码不涉及线程安全问题 阅读全文
posted @ 2021-08-16 18:03
豆本豆红枣豆奶
阅读(16)
评论(0)
推荐(0)
摘要:
目录 什么是 CASCAS 原理CAS 实现自旋锁CAS 实现原子类ABA 问题如何解决 ABA 什么是 CAS CAS(compare and swap),比较与交换。 如果普通的比较与交换 public void compareAndSwap(int num1, int num2) { if ( 阅读全文
posted @ 2021-08-16 11:35
豆本豆红枣豆奶
阅读(79)
评论(0)
推荐(0)
摘要:
题目 链接【剑指 Offer II 】 14. 字符串中的变位词 描述 给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的某个变位词。 换句话说,第一个字符串的排列之一是第二个字符串的 子串 输入与输出 输入: s1 = “ab” s2 = “eidbaooo” 输出: Tr 阅读全文
posted @ 2021-08-16 02:53
豆本豆红枣豆奶
阅读(11)
评论(0)
推荐(0)
浙公网安备 33010602011771号