自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 手写一个延迟队列

延迟队列延迟队列一般应用于周期执行或延迟执行的线程池中,在写延迟队列之前,先写一个一般线程池中应用的阻塞队列,阻塞队列有个特点,当尝试去获取元素时,如果队列为空,则阻塞当前线程,直到有元素进入再次唤醒。/** * @author siiirius * @since 2020-10-30 10:14 */public interface Queue<E> { /** * take an element from the queue and delete *

2020-11-02 11:29:00 265

原创 Redis底层数据结构

SDS 简单动态字符串C语言字符串:以空字符’\0’结尾SDS结构:struct sdshdr { int len;// 记录buf中已使用的字节数量,等于SDS字符串的长度 int free; // 记录buf中未使用的字节数量 char buf[]; // 字节数组,遵循用空字符结尾}与C字符串的区别1. 获取字符串长度常数复杂度2. 杜绝缓存区溢出,如果C字符串使用超过了分配的空间,则溢出3. 减少字符串修改带来的内存重新分配次数(空间预分配——需要扩展空间时,小于1M,预分配

2020-09-22 14:55:26 94

原创 阿里云的docker镜像加速服务

找到阿里云官网的容器镜像服务,然后点击开通,开通以后,在控制台左边选择镜像加速器,然后按照操作步骤完成即可。

2020-08-08 18:02:38 134

原创 从架构设计看线程池,无源码分析

线程池参数 /** * Creates a new {@code ThreadPoolExecutor} with the given initial * parameters. * * @param corePoolSize the number of threads to keep in the pool, even * if they are idle, unless {@code allowCoreThreadTimeOut} is

2020-07-24 23:17:32 89

原创 基于Spring 写监听者模式 Listener

背景为了代码解耦,一些与主业务无关的内容最好和主业务分开,我这里写了一个基于事件监听的模型,记录一下。代码结构** EventBroadcaster** 是事件发布器,ModelEvent继承自java.util.EventObject代表一个具体的事件EventListener是监听器的接口ModelEventListener和ModelEventListener2为监听ModelEvent的2个监听器,监听器之间的顺序可以使用spring的@Order注解或者java的@javax.ann

2020-07-06 21:24:40 276

原创 VMware Workstation + LINUX虚拟机安装【超详细】

下载安装激活VMware Workstation下载地址安装完,选择输入许可证,然后上面的下载地址也提供了一些秘钥,按版本号选择输入。创建新的虚拟机点击创建虚拟机选择自定义硬件兼容性,默认下一步虚拟机操作系统,选择稍后安装操作系统选择操作系统,我这里安装的centos 6 64位命名虚拟机,我这里将它命名为node01,位置选择磁盘空间充足的磁盘上的位置处理器配置,我这里选择默认的1个处理器,1个核心虚拟机内存选择1024M,也就是1个G,建议内存不要小于768,不然安装操作

2020-07-04 14:40:53 501

原创 netty ChannelInitlizer的作用

111

2020-07-03 22:06:07 766

原创 new Object() 和 new byte[0]占多少字节

使用的工具 <dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</artifactId> <version>0.10</version> </dependency>代码public class Test {

2020-07-03 16:41:18 1229

原创 很隐蔽的一个线程池死锁问题 CompletableFuture + ThreadPoolExecutor

package deadlock;import java.util.ArrayList;import java.util.List;import java.util.concurrent.CompletableFuture;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class ThreadPoolCompletableDeadLock { pub

2020-07-03 11:56:40 3786 1

CentOS-6.5-x86_64-minimal.rar

centos6 迷你版 系统镜像文件,供下载学习使用

2020-07-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除