摘要:文末 JVM 思维导图,有需要的可以自取 熟知并发编程的你认为下面这段代码的执行结果是怎么样的? 我如果说,执行流程是: t1 线程和 t2 线程一直执行 num 的累加操作 主线程睡眠 1 秒,1 秒之后醒过来打印此时的 num 值 t1 线程和 t2 线程继续执行加 1 的操作,直到执行完 2亿 阅读全文
posted @ 2021-05-17 13:01 CoderW喜欢写博客 阅读(270) 评论(0) 推荐(2) 编辑
摘要:这一周线上碰到一个诡异的BUG。 线上有个定时任务,这个任务需要查询一个表几天范围内的一些数据做一些处理,每隔十分钟执行一次,直至成功。 通过日志发现,从凌晨5:26分开始到5:56任务执行了三次,三次都因为SQL查询超时而执行失败,而诡异的是,任务到凌晨6:00多就执行成功了。 每天都是凌晨五点多 阅读全文
posted @ 2021-04-19 12:53 CoderW喜欢写博客 阅读(2470) 评论(19) 推荐(26) 编辑
摘要:前言 前几天小强去阿里巴巴面试Java岗,止步于二面。 他和我诉苦自己被虐的多惨多惨,特别是深挖线程和线程池的时候,居然被问到不知道如何作答。 对于他的遭遇,结合他过了一面的那个嘚瑟样,我深表同情(加大力度)! 好了,不开玩笑了,在和小强的面试题中,我选取了几个比较典型的线程和线程池的问题。 Jav 阅读全文
posted @ 2021-02-01 19:02 CoderW喜欢写博客 阅读(203) 评论(0) 推荐(1) 编辑
摘要:老套的笔试题 在一些老套的笔试题中,会要你判断s1==s2为false还是true,s1.equals(s2)为false还是true。 String s1 = new String("xyz"); String s2 = "xyz"; System.out.println(s1 == s2); S 阅读全文
posted @ 2021-01-24 14:25 CoderW喜欢写博客 阅读(305) 评论(2) 推荐(5) 编辑
摘要:前言 2020年是艰难的一年,但即使再难,也都过去了。 分析一下2020年的新闻热搜,可以大致了解网民都在关注什么。 微博热搜以娱乐为主,头条的热搜更偏向民生与时事。今天,我们先分析分析微博一整年的热搜。 数据抓取 由于微博平台不能查看历史热搜,本文所有的数据都是从云合数据旗下的一个热搜榜抓取的,具 阅读全文
posted @ 2021-01-18 19:08 CoderW喜欢写博客 阅读(916) 评论(5) 推荐(2) 编辑
摘要:从面试题说起 String s = new String("xyz"); 创建了几个实例? 这是一道很经典的面试题,在一本所谓的Java宝典上,我看到的“标准答案”是这样的: 两个,一个堆区的“xyz”,一个栈区指向“xyz”的s。 这个所谓的“标准答案”槽点太多,后面我们慢慢分析。 但是我觉得这个 阅读全文
posted @ 2021-01-17 17:46 CoderW喜欢写博客 阅读(136) 评论(0) 推荐(1) 编辑
摘要:volatile是什么 volatile关键字是Java提供的一种轻量级同步机制。它能够保证可见性和有序性,但是不能保证原子性 可见性 对于volatile的可见性,先看看这段代码的执行 flag默认为true 创建一个线程A去判断flag是否为true,如果为true循环执行i++操作 两秒后,创 阅读全文
posted @ 2021-01-17 12:53 CoderW喜欢写博客 阅读(196) 评论(0) 推荐(3) 编辑
摘要:ZGC介绍 ZGC(The Z Garbage Collector)是JDK 11中推出的一款追求极致低延迟的实验性质的垃圾收集器,它曾经设计目标包括: 停顿时间不超过10ms; 停顿时间不会随着堆的大小,或者活跃对象的大小而增加; 支持8MB~4TB级别的堆(未来支持16TB)。 当初,提出这个目 阅读全文
posted @ 2021-01-15 13:05 CoderW喜欢写博客 阅读(430) 评论(1) 推荐(5) 编辑