Java基础
文章平均质量分 85
罗志宏
这个作者很懒,什么都没留下…
展开
-
记一次OOM问题排查
记一次OOM问题排查原创 2022-10-15 10:06:42 · 892 阅读 · 0 评论 -
文件 IO
文件 IO1. 读文件2. 写文件3.文件在磁盘上的存放4. 顺序 IO 和 随机 IO5. 缓存 IO 和 直接 IO6. 零拷贝(Zero-copy)和 mmap6.1 mmap()6.2 sendfile()应用读写文件基本流程1. 读文件 用户程序通过内核程序提供的读取文件 api 发起对某个文件读取。此时程序从用户态切换到内核态,用户程序处于阻塞状态,由于读取的内容还不在内核缓冲区中,导致触发 OS 缺页中断异常。然后由 OS 负责发起对磁盘文件的数据读取,这个读取动作交由 DMA 去完原创 2022-04-26 20:09:31 · 825 阅读 · 0 评论 -
最佳开发体验
最佳开发体验一、idea插件1.1 MybatisX 不仅可以做到从dao接口到mapper配置文件跳转,还可以根据输入的接口自动生成对应sql类型的xml标签1.2 arthas idea 支持的功能都是平时处理最常用的一些功能,一些快捷的链接,在处理紧急问题时候不需要到处查找,都是一些基本的功能,自动复制到剪切板中去,方便快捷。1.3 POJO to json选中类-右键-POJO to json 将简单Java类型转成JSON。适应场景:进行微服务invoke调试时,某些服原创 2021-09-25 21:26:37 · 120 阅读 · 0 评论 -
Linux 操作指南
1.日志操作在整个日志文件dinner-2.log,取出所有含有"xxxx"的行,并在当前目录生成符合要求的行的文件yyyy.txtcat dinner-2.log | grep 'xxxx' >> yyyy.txt在日志文件中,查询包含字符串的行内容grep “要查找的字符串” 文件名查看实时日志tail -f xxx.log......原创 2021-09-11 12:43:32 · 133 阅读 · 0 评论 -
Java线程池原理
Java线程池原理1、为什么要使用线程池 当前主流商业Java虚拟机的线程模型都是基于操作系统原生线程模型来实现,即采用1:1的线程模型。 如果不理解可以看这篇文章:https://blog.csdn.net/weixin_44981707/article/details/114682305 现在的服务器基本都是多个核心,多个核心可以达到并行运算。对于我们常见的web服务,有cpu密集型计算,也有IO密集型计算,线程数设置过多,会导致线程上下切换过于频繁,消耗性能,设置过少,不能充分利用cpu原创 2021-03-22 07:53:14 · 719 阅读 · 0 评论 -
深入分析AQS实现原理
深入分析AQS实现原理一、什么是AQS1、AQS的两种功能2、AQS的内部实现3、锁竞争、锁释放对队列的变化3.1 锁竞争3.2 锁释放二、AQS源码分析2.1 加锁ReentrantLock.lockNonfairSync.lockAQS.compareAndSetStateAQS.acquireNonfairSync.tryAcquireSync.nonfairTryAcquireAQS.addWaiterAQS.enqAQS.acquireQueuedAQS.shouldParkAfterFailed原创 2021-03-22 00:51:58 · 1444 阅读 · 0 评论 -
原码、反码、补码
原码、反码、补码1. 原码、反码、补码2. 异或运算3. 位移运算1. 原码、反码、补码以int a = 128 和 int b = -128为例。int在jvm内存中占用四字节,总共32位,最高位是正、负号标识符正数:int a = 128原码:0000 0000 0000 0000 0000 0000 1000 0000反码:0000 0000 0000 0000 0000 0000 1000 0000补码:0000 0000 0000 0000 0000 0000 100原创 2021-03-06 10:08:19 · 1001 阅读 · 0 评论 -
注解
注解1. 基本语法1.1 定义注解1.2 元注解2. 编写注解处理器2.1 注解元素2.2 默认值限制2.3 生成外部文件2.4 注解不支持继承2.5 实现处理器简介:注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据Java一些元注解:@Override:表示当前的方法定义将覆盖超类中的方法。@Deprecated:如果程序员使用了注解了它的元素,那么编译器会发出警告信息。@SuppressWarnings:关闭不当的编译器警告信原创 2021-01-25 22:47:09 · 126 阅读 · 0 评论 -
枚举类型详解
枚举类型1. enum基本特性2. 静态导入enum3. 向enum中添加新方法4. values()的神秘之处5. 常量相关的方法 简介:关键字enum可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用。这是一种非常有用的功能。1. enum基本特性 创建enum时,编译器会为你生成一个相关的类,这个类继承自java.lang.Enum。能够使用它的方法enum Shrubbery { GROUND, CRAWLING, HANGING}p原创 2021-01-24 10:59:53 · 461 阅读 · 0 评论