自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (5)
  • 收藏
  • 关注

原创 设计模式之工厂模式

工厂模式:当创建逻辑比较复杂时,就可以考虑使用工厂模式,封装对象的创建过程,将对象的创建和使用相分离。工厂模式,属于创建类型实际代码我放在了Github: https://github.com/liangtengyu/DesignPatterns-for-Java应用场景:学习一个设计模式之前 我们先了解它的使用场景能够帮我们更快的理解它,相对于直接 new 来创建对象,用工厂模式来创建究竟有什么好处呢? 主要有两种情况:第一种情况是类似规则配置解析的例子,代码中存在 if-else

2021-06-24 09:22:16 310 1

原创 设计模式之单例模式

单例模式:单例模式,顾名思义就是只有一个实例,并且她自己负责创建自己的对象,这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象单例模式,属于创建类型实际代码我放在了Github: https://github.com/liangtengyu/DesignPatterns-for-Java应用场景:学习一个设计模式之前 我们先了解它的使用场景能够帮我们更快的理解它,单例模式只允许创建一个对象,因此更节省内存,加快对象访问速度,因此对象需要被公用的场合适合使用,如多个模块使

2021-06-22 10:44:11 240

原创 JAVA宝典-面试题-多线程篇(含答案)

下面是Java线程相关的高频面试题(含答案),你可以用它来好好准备面试。[TOC]1.并行和并发有什么区别?并发:是指多个线程任务在同一个CPU上快速地轮换执行,由于切换的速度非常快,给人的感觉就是这些线程任务是在同时进行的,但其实并发只是一种逻辑上的同时进行;并行:是指多个线程任务在不同CPU上同时进行,是真正意义上的同时执行。2.进程和线程的区别与联系?区别并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行。拥有资源:进程是拥有资源的一个独立单位,线程不拥有系

2021-06-17 16:03:53 333 1

原创 Mysql为何使用可重复读(Repeatable read)为默认隔离级别?

事务的特性(ACID)群里有小伙伴面试时,碰到面试官提了个很刁钻的问题:Mysql为何使用可重复读(Repeatable read)为默认隔离级别??? 下面进入正题:我们都知道事务的几种性质 :原子性、一致性、隔离性和持久性 (ACID) 为了维持一致性和隔离性,一般使用加锁这种方式来处理,但是加锁相对带来的是并发处理能力的降低而数据库是个高并发的应用,因此对于加锁的处理是事务的精髓.下面我们来了解一下封锁协议,以及事务在数据库中做了什么封锁协议(Locking Protocol)

2021-06-11 16:42:42 1362 4

原创 CentOS7利用docker安装MySQL5.7

CentOS7利用docker安装MySQL5.7前提条件centos7 且内核版本高于3.10, 可通过以下命令查看内核版本uname -r利用yum 安装docker安装一些必要的系统工具:sudo yum install -y yum-utils device-mapper-persistent-data lvm2添加软件源信息:sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/c

2021-06-11 10:13:52 221 1

原创 面试官:说说MyBatis分页插件(PageHelper)工作原理和配置过程?

  数据分页功能是我们软件系统中必备的功能,在持久层使用mybatis的情况下,pageHelper来实现后台分页则是我们常用的一个选择,所以本文专门类介绍下。PageHelper原理相关依赖<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version>&

2021-06-04 14:46:34 505

原创 equals() ? ==? hashCode()? 今天就把你们都认识清楚

目录Java中的数据类型什么时候用关系操作符==,什么时候用equals方法?equals方法,为什么报了 空指针 java.lang.NullPointerException?hashCode 方法有什么作用?hashCode 和 equals 的关系?为什么每个覆盖了equals方法的类中,也必须覆盖hashCode方法?数据类型java中的数据类型,可分为两类:1.基本数据类型(原始数据类型)byte,short,char,int,long,float,double,boo

2021-04-14 17:08:20 204

原创 JUC解析 抽象队列同步器(AQS-AbstractQueuedSynchronizer)

抽象队列同步器(AQS-AbstractQueuedSynchronizer)从名字上来理解:抽象:是抽象类,具体由子类实现队列:数据结构是队列,使用队列存储数据同步:基于它可以实现同步功能我们就从这几个方面来入手解读,但首先,我们得先知道以下几个它的特点,以便于理解AbstractQueuedSynchronizer特点1.AQS可以实现独占锁和共享锁。2.独占锁exclusive是一个悲观锁。保证只有一个线程经过一个阻塞点,只有一个线程可以获得锁。3.共享锁shared是一个乐观锁

2021-04-13 17:31:20 245

原创 Redis 缓存机制与应用

Redis是目前最为主流的缓存技术之一,Redis基于内存操作从而拥有强大的性能,可以达到每秒10万次的请求,可以说是一款非常强大的缓存技术了。本文分为三部分:基础知识介绍常用技术讲解与缓存机制使用场景、缓存问题基础知识介绍NoSQL概述什么是NoSQL?NoSQL = Not Only SQL (不仅仅是SQL)关系型数据库:表格 ,行 ,列非关系型数据库:没有固定的查询语言,键值对存储,列存储,文档存储随着web2.0互联网的诞生!传统的关系型数据库很难对付web2.0时代!尤

2021-03-23 14:34:22 427

原创 面试官:Java中实例对象存储在哪?

在面试时,遇到这个问题,先不要掉以轻心的一口回答在堆中,一般在java程序中,new的对象是分配在堆空间中的,但是实际的情况是,大部分的new对象会进入堆空间中,而并非是全部的对象,还有另外两个地方可以存储new的对象,我们称之为栈上分配以及TLAB学习本章需要一些前置知识,这里我列一下:1. JVM的类加载流程2. JVM内存结构 / 堆分代结构 下面进入正题:[toc]理解Java编译流程低级语言是计算机认识的语言、高级语言是程序员认识的语言。如何从高级语言转换成低级语言呢?这个过程其实就

2021-03-15 10:09:48 808

原创 jvm内存结构,java内存模型,java对象布局还分不清?快来围观!

hello 我是宝哥 , 接上一篇文章,我们聊到了JVM加载类的流程有面试官会让你解释一下Java的内存模型,有些人解释对了,结果面试官说不对,应该是堆啊、栈啊、方法区什么的(遇到这种面试官,就是你装逼的时刻了..)看完本篇文章你将了解:1.JVM内存结构2.JVM栈帧剖析3.方法区在JDK1.7和1.8中的区别4.堆分代结构建议收藏!JVM内存结构首先JVM内存结构和JAVA内存模型是两个概念.JVM内存结构:Class文件通过类加载机制 加载到内存空间,JVM内存结构就是上

2021-03-09 16:35:15 198

原创 从零了解JVM,先来看看类加载机制吧!

hello 我是宝哥,今天我们来聊聊JVM的类加载过程要搞清楚JVM,首先要搞清楚几个问题:jvm起到什么作用?怎么加载class文件的?加载类时会重复吗?顺序是什么样的?说到jvm 那么不得不提类的加载过程.我们先来了解下类是如何被一步一步加载到jvm的类的加载过程我们先笼统的了解一下类加载的整个过程:如上图所示,Java源代码文件(.java后缀)会被Java编译器编译为字节码文件(.class后缀)然后由JVM中的类加载器加载各个类的字节码文件,加载完毕之后,交由JVM执行引

2021-03-09 09:47:11 204 1

原创 深入解析JVM原理,JVM到底是什么

运行时数据区结构堆、栈、方法去的交互关系1、介绍:《Java虚拟机规范》中明确说明:“尽管所有的方法区在逻辑上是属于堆的一部分,但一些简单的实现可能不会选择去进行垃圾收集或者进行压缩。”但对于HotSpotJVM而言,方法区还有一个别名叫做Non-Heap(非堆),目的就是要和堆分开。所以,方法区看作是一块独立于Java堆的内存空间。方法区(Method Area)与Java堆一样,是各个线程共享的内存区域。方法区在JVM启动的时候被创建,并且它的实际的物理内存空间中和Java堆区一样都

2021-03-08 13:57:39 464

原创 Java的类加载器(ClassLoader)简介

ClassLoader是Java的类加载器,用于把class文件加载到JVM中,下面大概了解一下Java类加载器的概况。一,java提供的加载器Java提供了三个ClassLoader:1,BootstrapClassLoader用于加载JAVA核心类库,也就是环境变量的%JRE_HOME%\lib下的rt.jar、resources.jar、charsets.jar等。在JVM启动时加入-Xbootclasspath参数,可以把对应路径也加载到Bootstrap的路径列表中来,这个参数有两种用法

2021-03-03 14:01:29 346

原创 [干货]图文并茂深入理解JVM

结合字节码指令理解Java虚拟机栈和栈帧栈帧:每个栈帧对应一个被调用的方法,可以理解为一个方法的运行空间每个栈帧中包括局部变量表(Local Variables),操作数栈(Operand Stack) 执行运行时常量池的引用(A reference to the run-time constant pool),方法返回地址(Return Address)和附加信息局部变量表:方法中定义的局部变量以及方法的参数存放在这张表中局部变量表中的变量不可直接使用,如需要使用的话,必须通过相关指令将其加载至操

2021-03-03 10:50:24 196

原创 RabbitMQ实现即时通讯居然如此简单!

有时候我们的项目中会用到即时通讯功能,比如电商系统中的客服聊天功能,还有在支付过程中,当用户支付成功后,第三方支付服务会回调我们的回调接口,此时我们需要通知前端支付成功。最近发现RabbitMQ可以很方便的实现即时通讯功能,如果你没有特殊的业务需求,甚至可以不写后端代码,今天给大家讲讲如何使用RabbitMQ来实现即时通讯!MQTT协议MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模.

2021-03-03 10:23:43 1275 1

原创 2021最新最全Java 进阶资料合集

2021最新最全Java资料合集,建议白嫖!!! 对于学习路线,我说一条我比较推荐的,我相信照着这条学习路线来你的学习效率会非常高。由简到繁,由易到难,一步步的学习,最后成为JAVA攻城狮基础语法,可帮助你建立基本的编程逻辑思维;面向对象,以对象方式去编写优美的Java程序;集合,后期开发中存储数据必备技术;IO,对磁盘文件进行读取和写入基础操作;多线程与并发,提高程序效率;异常,编写代码逻辑更加健全;网络编程,应用服务器学习基础,完成数据的远程传输。书籍PDF我已经整理.

2021-03-02 09:14:32 502

原创 JAVA对象布局--对象头(Object Header)

由于Java面向对象的思想,在JVM中需要大量存储对象,存储时为了实现一些额外的功能,需要在对象中添加一些标记字段用于增强对象功能 。在学习并发编程知识synchronized时,我们总是难以理解其实现原理,因为偏向锁、轻量级锁、重量级锁都涉及到对象头,所以了解java对象头是我们深入了解synchronized的前提条件,以下我们使用64位JDK示例1.对象布局的总体结构2.获取一个对象布局实例1.首先在maven项目中 引入查看对象布局的神器 <dependency&gt.

2021-03-01 17:30:09 483

原创 一文入门Java Stream流,太强了

两个星期以前,就有读者强烈要求我写一篇 Java Stream 流的文章,我说市面上不是已经有很多了吗,结果你猜他怎么说:“就想看你写的啊!”你看你看,多么苍白的喜欢啊。那就“勉为其难”写一篇吧,嘻嘻。单从“Stream”这个单词上来看,它似乎和 java.io 包下的 InputStream 和 OutputStream 有些关系。实际上呢,没毛关系。Java 8 新增的 Stream 是为了解放程序员操作集合(Collection)时的生产力,之所以能解放,很大一部分原因可以归功于同时出现的 Lam

2021-03-01 17:22:43 194

原创 Memcached or Redis?

Memcached or Redis?在我们讨论如何提升现代数据库驱动的web应用程序的性能时,这个问题是不可避免的Memcached or Redis? 当性能需要进一步提高时,缓存通常是第一步Memcached vs redis首先从相似之处说起,Memcached Redis 都属于NoSql数据管理的解决方案,他们两个都基于内存,并且数据保存在RAM中,基于内存的高速特性,使得他们在作为缓存层面极其合适,在性能方面,两个数据库也非常相似,在吞吐量和延迟方面,表现几乎不分伯仲.说了这么

2021-02-24 15:20:42 175

原创 redis面试真题解答篇

Redis 的特点?Redis 全称为: Remote Dictionary Server(远程数据服务),该软件使用 C 语言编写,典型的 NoSQL 数据库服务器,Redis 是一 个 key-value 存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set)、hash。Redis 本质上是一个 Key-Value 类型的内存数据库,很像 memcached,整个 数据库统统加载在内存当中进 行操作,定期通过异步操作把数据库数据 flush 到硬盘 上进

2021-02-24 10:20:14 192

原创 Redis源码入门-字符串sds,sdshdr

sds,全称Simple Dynamic Strings,是Redis自定义的一个字符串类型。typedef char *sds;看到这你肯定内心觉得Redis在逗你,这不就是一个字符数组么,怎么就Simple Dynamic Strings了呢 !没错,我当时也是这么觉得的,但是仔细阅读源码后发现sds并不是一个人在战斗,它还有战友sdshdr,sdshdr是个五胞胎,分别是sdshdr5,sdshdr8,sdshd16,sdshdr32,sdshd64。块头从小到大。sdshdr 全称 Simpl

2021-02-24 09:24:32 471 1

原创 HashMap连环问你能答出几道?

1:HashMap 的数据结构?A:哈希表结构(链表散列:数组+链表)实现,结合数组和链表的优点。当链表长度超过 8 时,链表转换为红黑树。transient Node<K,V>\[\] table;2:HashMap 的工作原理?HashMap 底层是 hash 数组和单向链表实现,数组中的每个元素都是链表,由 Node 内部类(实现 Map.Entry接口)实现,HashMap 通过 put & get 方法存储和获取。存储对象时,将 K/V 键值传给 put() 方法:

2021-02-23 15:49:23 234

原创 java中的反射和代理

  Java反射机制可以动态地获取类的结构,动态地调用对象的方法,是java语言一个动态化的机制。java动态代理可以在不改变被调用对象源码的前提下,在被调用方法前后增加自己的操作,极大地降低了模块之间的耦合性。这些都是java的基础知识,要想成为一名合格的程序猿,必须掌握!Java反射机制  JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 

2021-02-23 14:25:57 281

原创 官方Spring Boot starters整理

Spring Boot startersSpring Boot 的功能组件(例如 spring-boot-starter-actuator、 spring-boot-starter-data-redis 等)的步骤非常简单,用著名的把大象放冰箱的方法来概括的话,有以下三步就可以完成组件功能的使用:STEP 1在 pom 文件中引入对应的包,例如: org.springframework.boot spring-boot-starter-actuator STEP 2在应用配置文

2021-02-02 16:48:37 219

原创 Java是引用传递还是值传递?

前言前段时间在群里看到类似这样一个问题,下面的代码会输出什么呢?publicvoidtest(){Stringstr="hello";change(str);System.out.println(str);}privatevoidchange(Stringstr){str="world";}当时看到这题,瞬间勾起了我的回忆。遥想当年,也曾经碰到过类似的问题,当时研究了好久才搞明白,这里再记...

2021-01-29 15:45:28 174

原创 设计模式之享元模式

一、什么是享元模式  说到享元模式,第一个想到的应该就是池技术了,String常量池、数据库连接池、缓冲池等等都是享元模式的应用,所以说享元模式是池技术的重要实现方式。  比如我们每次创建字符串对象时,都需要创建一个新的字符串对象的话,内存开销会很大,所以如果第一次创建了字符串对象“adam“,下次再创建相同的字符串”adam“时,只是把它的引用指向”adam“,这样就实现了”adam“字符串再内存中的共享。  举个最简单的例子,网络联机下棋的时候,一台服务器连接了多个客户端(玩家),如果我们每个棋子

2021-01-29 15:16:59 156

原创 Mysql优化操作学习纪录

SHOW STATUS;FLUSH STATUS; 查看当前连接数 SHOW STATUS LIKE 'Thread_%';Thread_cached:被缓存的线程的个数Thread_running:处于激活状态的线程的个数Thread_connected:当前连接的线程的个数Thread_created:总共被创建的线程的个数 Thread cache hitsThread_connected = SHOW GLOBAL STATUS LIKE Thread_created;Con

2021-01-28 16:46:43 167

原创 设计模式之组合模式

一、什么是组合模式  组合模式(Composite),将对象组合成树形结构以表示“部分-整体”的层次结构,用户对单个对象和组合对象的使用具有一致性。  所以当我们的案例是树形结构或者是部分-整体的关系时,就可以考虑使用组合模式。  组合模式有两种不同的实现,分别为透明模式和安全模式,下面将详细说明一下两种实现的区别。  先说明一下UML图中各角色的职责。Component是对象声明接口,在适当情况下,实现所有类共有接口的默认行为;Leaf是叶子节点对象,其没有子节点;Composite是树枝节点对象

2021-01-28 10:35:00 319

原创 性能指标:QPS、TPS、RT、吞吐量

一、QPS 每秒查询QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。互联网中,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。二、TPS 每秒事务TPS:是TransactionsPerSecond的缩写,也就是事务数/秒。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使

2021-01-27 10:57:39 723

原创 JAVA的SPI机制

JAVA的SPI机制是什么?SPI(Service Provider Interface): ,“服务提供者接口”,是指在 服务使用方 角度提出的“接口要求”,是对“服务提供方”提出的约定,简单说就是:“我需要这样的服务,现在你们来满足”。是不是看起来很高深的样子.其实特别简单 我们先来一个例子,大家更容易理解什么是JAVA的SPI机制:首先我们提供了一个订单处理的接口/** * @Author: lty * @Date: 2021/1/22 14:24 * 订单的处理接口 */publ

2021-01-22 15:38:55 335

原创 微信8.0安卓版来了

今天微信内测安卓版本发布了.我也第一时间装上了试用:新功能新版本引导页但是只有第一次登陆新版微信才会看到,微信启动画面还是以前的地球动态表情发送炸弹,会爆炸,手机还会震动,发送烟花,会在屏幕上放烟花.这感觉像回到了QQ更新的表情浮窗升级浮窗功能带来一波大升级个人状态在微信「我」页面,点击个人头像下面的「+状态」按钮点击可以查询同状态的好友列表微信个人版本将最大好友数从5000提升到了10000添加5000位好友后,可以继续添加新的好友。之前未开放的时候,达到上限,

2021-01-22 10:53:59 333

原创 JVM调优总结

一些概念数据类型Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。基本类型包括:byte,short,int,long,char,float,double,Boolean,returnAddress引用类型包括:类类型,接口类型和数组。堆与栈堆和栈是程序运行的关键,很有必要把他们的关系说清楚。栈是运行时的单位,

2021-01-19 14:50:25 235

原创 如何使用 Java 泛型来避免 ClassCastException

如何使用 Java 泛型来避免 ClassCastException泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。一句话解释什么是泛型?泛型是相关语言特性的集合,它允许类或方法对各种类型的对象进行操作,同时提供编译时类型安全性检查引入泛型之前泛型在Java集合框架中被广泛使用,我们不使用泛型,那么代码将会是这样:List doubleList = new LinkedList();doubleList.add(3.5D);Double d = (Double

2021-01-18 17:06:03 791

原创 JAVA中的断言是什么?有什么陷阱?

如何在 Java 中使用断言什么是 Java 断言?在 JDK 1.4之前,开发人员经常使用注释来记录关于程序正确性的假设。然而,注释作为测试和调试假设的机制是无用的。编译器忽略注释,因此无法使用它们进行 bug 检测。开发人员在更改代码时也经常不更新注释。在 JDK 1.4中,断言被引入作为测试和调试代码假设的新机制。实质上,断言是在运行时执行的可编译实体,假设你已经为程序测试启用了它们。可以通过编写断言来通知 bug 发生的地方,这样可以大大减少调试失败程序的时间。如何用 Java 编写断言编

2021-01-16 15:15:46 632

原创 JVM Thread Dump 文件分析

JAVA Thread Dump 文件分析Thread Dump介绍Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是大多都提供了每个线程的所有信息,例如: 线程状态、线程 Id、本机 Id、线程名称、堆栈跟踪、优先级。Thread Dump特点能在各种操作系统下使用能在各种Java应用服务器下使用可以在生产环境下使用而不影响系统

2021-01-15 13:40:36 385

原创 学习单例模式引发的思考

单例存在哪里问题?1.单例对oop的支持不友好OOP 四大特性: 封装 继承 多态 抽象而单例这种设计模式对于其中的抽象 继承 多态 都支持的不好 为什么这么说呢?我们先来看一个单例的例子public class Singleton_4 { //使用内部类方式构造单例, 线程安全并且懒加载 private AtomicInteger id = new AtomicInteger(0); private Singleton_4() { } public

2021-01-13 09:08:26 183

原创 JVM生成的3种文件,你都见过吗?

什么是 Java 虚拟机(JVM)中的垃圾收集(GC)日志、线程转储和堆转储?Java 虚拟机(JVM)生成3个关键文件,这些文件对于JVM优化性能和解决生产问题非常有用。这些文件是:(GC) Garbage collection log 垃圾收集日志Thread Dump 线程转储Heap Dump 堆转储带着问题一探究竟在本文中,让我们尝试理解这三个关键文件,在哪里使用它们,它们看起来如何,如何捕获它们,如何分析它们和它们的差异是什么。Garbage Collection Log (垃

2021-01-12 21:31:26 276 1

原创 一文搞懂什么是布隆过滤器(附JAVA实现)

1.什么是布隆过滤器?首先,我们需要了解布隆过滤器的概念。布隆过滤器(Bloom Filter)是一个叫做 Bloom 的老哥于1970年提出的。我们可以把它看作由二进制向量(或者说位数组)和一系列随机映射函数(哈希函数)两部分组成的数据结构。相比于我们平时常用的的 List、Map 、Set 等数据结构,它占用空间更少并且效率更高,但是缺点是其返回的结果是概率性的,而不是非常准确的。理论情况下添加到集合中的元素越多,误报的可能性就越大。并且,存放在布隆过滤器的数据不容易删除。位数组中的每个

2021-01-08 14:21:21 1128

原创 缓存淘汰算法(LFU、LRU、ARC、FIFO、MRU)

缓存算法是指令的一个明细表,用于决定缓存系统中哪些数据应该被删去。常见类型包括LFU、LRU、ARC、FIFO、MRU。最不经常使用算法(LFU):这个缓存算法使用一个计数器来记录条目被访问的频率。通过使用LFU缓存算法,最低访问数的条目首先被移除。这个方法并不经常使用,因为它无法对一个拥有最初高访问率之后长时间没有被访问的条目缓存负责。最近最少使用算法(LRU):这个缓存算法将最近使用的条目存放到靠近缓存顶部的位置。当一个新条目被访问时,LRU将它放置到缓存的顶部。当缓存达到极限时

2021-01-07 09:34:22 354

JAVA进阶资料 进阶资料

JAVA进阶资料

2021-03-01

notion_2.0.11.dmg notion 2020年最新 mac版本

下载比较慢,上传会下载会方便一点..Notion-2.0.11.dmg notion 2020年最新 mac

2020-12-14

sqlyog64位破解版.zip

sqlyog64位破解版.zip

2017-08-17

HTML网站后台管理系统模版源码.zip

HTML网站后台管理系统模版源码

2017-08-17

HTML5 参考手册.chm

HTML5 参考手册.chm HTML5 参考手册.chm

2017-08-17

空空如也

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

TA关注的人

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