java
文章平均质量分 83
云淡风轻~~
这个作者很懒,什么都没留下…
展开
-
Linux-零拷贝及Java实现
零拷贝指的是在进行IO的时候减少或避免让CPU拷贝数据(数据在IO缓冲区中进行拷贝)减少甚至完全避免不必要的CPU拷贝,从而让CPU解脱出来去执行其他的任务减少内存带宽的占用通常零拷贝技术还能够减少用户空间和操作系统内核空间之间的上下文切换零拷贝涉及用户空间、内核空间,用户态以及内核态。操作系统为了保证系统运行的安全与稳定,内存中专门有一块区域用于运行操作系统程序,此内存区域就称为内核空间。内核空间不仅有操作系统内核代码,还有硬件驱动,可以直接操作硬件。原创 2023-04-19 11:27:52 · 746 阅读 · 0 评论 -
JVM内存泄露与溢出
从上图可以看出来,hreadLocalMap使用ThreadLocal的弱引用作为key,如果一个ThreadLocal不存在一个外部强引用时,Key(ThreadLocal)势必会被GC回收,这样就会导致ThreadLocalMap中key为null,而value还存在着强引用,只有thread线程退出以后,value的强引用链条才会断掉。为了避免这种情况,我们可以在不再需要静态集合中的元素时,手动将其从集合中移除,或者使用弱引用等更加安全和灵活的解决方案,以便及时释放内存并提高应用程序的性能。原创 2023-04-06 15:10:22 · 586 阅读 · 0 评论 -
数据同步神器——DataX 的源码学习
DataX的源码学习原创 2022-04-18 17:21:57 · 4359 阅读 · 0 评论 -
Java8 lambda表达式
首先,lambda是 指代 希腊字母表中排序第十一的字母,其应为名称就为Lambda。其作用就是避免匿名内部类定义过多,简化开发。实质属于函数式编程的范畴。原创 2022-04-11 13:51:50 · 452 阅读 · 0 评论 -
了解CompletableFuture
了解CompletableFuture为什么要引入CompletableFuture为了获得最佳性能表现,可能就需要仔细规划业务流程中的各个步骤的编排。而Java8就提供了这样一个即用容器来连接一系列任务。CompletableFuture 如何来构建一个任务链呢?这里就不先介绍API了,之前看应用场景。目前有一个需求: 我们需要从 数据中台中获取 安徽、江苏、浙江三省内所有企业信息 及其 子公司 的信息,并按 **子公司数量 **进行排序。我从观察到的代码(finchinaApp)中来看原创 2022-03-16 13:07:39 · 753 阅读 · 0 评论