首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java
订阅
liyaodong
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
我竟然不再抗拒 Java 的类加载机制了
很长一段时间里,我对 Java 的类加载机制都非常的抗拒,因为我觉得太难理解了。但为了成为一名优秀的 Java 工程师,我决定硬着头皮研究一下。 在聊 Java 类加载机制之前,需要先了解一下 Java 字节码,因为它和类加载机制息息相关。 计算机只认识 0 和 1,所以任何语…
异步技巧之CompletableFuture
在上面的注释中我们能知道Future用来代表异步的结果,并且提供了检查计算完成,等待完成,检索结果完成等方法。简而言之就是提供一个异步运算结果的一个建模。它可以让我们把耗时的操作从我们本身的调用线程中释放出来,只需要完成后再进行回调。就好像我们去饭店里面吃饭,不需要你去煮饭,而…
《重构—改善既有代码的设计》手法汇总
1. 坏代码的味道; 2. 重构的手法。
面试官:说说你之前负责的系统,QPS 能达到多少?
这个时候,我们就需要借助一些常用的性能测试工具,如 Apache ab, Apache JMeter (互联网公司用的较多),LoadRunner 等。 我们今天主要说一说轻量级性能测试工具 wrk。 wrk 是一款针对 Http 协议的基准测试工具,它能够在单机多核 CPU …
Java 200+ 面试题补充 ThreadLocal 模块
本文是前文《Java 最常见的 200+ 面试题》的第一个补充模块。 ThreadLocal 是一个本地线程副本变量工具类。主要用于将私有线程和该线程存放的副本对象做一个映射,各个线程之间的变量互不干扰,在高并发场景下,可以实现无状态的调用,适用于各个线程不共享变量值的操作。 …
Java 内存模型
编译器优化指令执行次序,使得缓存能得到更加充分的利用。 虽然高速缓存很好地解决了处理器与内存的速度矛盾,但是又出现了一个新的问题。在多核处理机中,每个处理器都有自己的高速缓存,它们共享同一主内存。当多个处理器的任务涉及到同一块主内存区域时,可能导致缓存的数据不一致的情况,这就是…
Java垃圾回收机制
Java语言是一门自动内存管理的语言,不再需要的对象可以通过垃圾回收自动进行内存释放。 程序计数器可以看做是当前线程所执行字节码的行号指示器。JVM依靠程序计数器来选取需要执行的下一条字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来实现。 虚拟机…
初识Java内存模型
JMM规定Java每个线程都有自己的工作内存(Working Memory),线程的工作内存中有共享变量的副本,共享变量则存放在主存(Main Memory)中。工作内存是线程私有的,而主存则是所有线程共享的。工作内存用于存放线程私有的数据。而Java内存模型中规定所有变量都存…
Java利用Comparator实现分组排序
如果我们将第一参数与第二个参数进行比较,那么表示这是一个升序序列(自然排序),否则表示一个降序序列。 现在回过去看,原来分组排序如此的简单呀,不过这完全得益于 Comparator 的强大,你也完全可以选择实现 Comparable 接口来达到相同的效果。