> Java 基础 - Yuyy
Yuyy
Yuyy

Java 基础
文章归档

查找第K小/大数据,千万数据排序

思路 刚开始我以为这题的考点是如何快速读取文件(因为这是公司多线程学习分享后布置的作业),我就用多线程来解题。后来出题人跟我说:200m测试数据时我的程序OOM了,我才醒悟这题的考点不是快速读取文件,而是大文件排序。 这题挺有意思的,解题运用了多路归并,有…

   33   2021-03-17   去看看

线程池(一)What Is ThreadPool

一、写在前面 1.1 线程池是什么 线程池(Thread Pool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL。 线程过多会带来额外的开销,其中包括创建销毁线程的开销、调度线程的开销等等,同时也降低了计算机的整体性能。线程池维护多个线程,…

   42   2021-03-09   去看看

Java垃圾回收(一)

GC 一、定义 1. 什么是垃圾 没有引用的对象(注意Java引用分为强软弱虚) 2. 怎么找到垃圾 引用计数法(Reference Counting): 虽然循环引用的问题可通过 Recycler 算法解决,但是在多线程环境下,引用计数变更也要进行昂贵的同步操作,性能较低,早期的编程语…

   37   2021-02-21   去看看

Java多线程(一)

一、线程 1. 线程方法 new T1().run() 调用run方法,同步的 Thread.yield() 让一下CPU,线程进入等待队列,从RUNNING变为RUNABLE状态 t.join() 等待t线程运行结束再运行 2. 线程状态 注意:Wating的原因 二、关键字 1. volatile 保证线程可见性 MESI …

   54   2021-02-20   去看看

Java:ThreadLocal

ThreadLocal结构图 结构变化后带来的好处 早期ThreadLocalMap里的Entry较多,每个线程都有一个,占用空间大 线程销毁时,后期的ThreadLocalMap将会销毁,释放资源 设置默认值,也就是当前线程和ThreadLocal对象还未往ThreadLocalMap里存数据时 ThreadLocal…

   68   2020-12-19   去看看

Java引用:强、软、弱、虚

Java引用分为强引用、软引用、弱引用、虚引用 一、强引用 public class M { @Override protected void finalize() throws Throwable { System.out.println("m.finalize"); super.finalize(); } } public static void main(String[] arg…

   69   2020-12-19   去看看

动态代理+读写锁实现线程安全的HashMap缓存工具类

背景 jdk1.8之前是没有线程安全的集合工具类,例如currentHashMap,那怎样实现高效、线程安全的集合工具类呢? 可以利用读写锁实现线程安全,动态代理帮助集合作为工具类,产生更多的使用场景,例如缓存 代码 1. 创建缓存基类和子类 + 基类里的读写锁 private Re…

   63   2020-11-15   去看看

转载:cglib动态代理

这篇文章没有摘要

   0   2020-10-25   去看看

转载:代理模式(动态代理、静态代理)

这篇文章没有摘要

   5   2020-10-25   去看看

JavaIO笔记

1. 什么是流 内存与存储设备之间传输数据的管道 2. 流的分类 按方向 输入流 输出流 按单位 字节流 以字节为单位,可以读写所有数据 字符流 以字符为单位,只能读写文本数据 按功能 节点流 具有实际传输数据的读写功能 过滤流 在节点流的基础上增强功能…

   196   2020-08-10   去看看
加载更多
友情链接
标签
文章归档
近期文章