摘要: 传统IO 应用调用read方法向操作系统发起读数据的请求,此时由用户态切换为内核态 当系统收到读数据请求时,利用DMA控制器把数据从磁盘读取到系统缓存区中(图中2.1) 再然后CPU会把系统缓存区的数据写应用缓存区(图2.2),此时由内核态切换为用户态 应用再调用write方法通知系统进行数据的写操 阅读全文
posted @ 2022-07-28 10:48 Hitechr 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 什么是AbstractQueuedSynchronizer(AQS) 字面意思是抽象队列同步器,使用一个voliate修饰的int类型的同步状态,通过一个FIFO队列完成资源获取的排队工作,把每个参与资源竞争的线程封装成一个Node节点来实现锁的分配。 AbstractQueuedSynchroni 阅读全文
posted @ 2022-07-13 16:34 Hitechr 阅读(543) 评论(0) 推荐(0) 编辑
摘要: synchronized是什么 synchronized是java同步锁,同一时刻多个线程对同一资源进行修改时,能够保证同一时刻只有一个线程获取到资源并对其进行修改,因此保证了线程安全性。 synchronized可以修饰方法和代码块,底层实现的逻辑略有不同。 Object obj=new Obje 阅读全文
posted @ 2022-07-12 17:46 Hitechr 阅读(463) 评论(0) 推荐(1) 编辑
摘要: runAsync 和 supplyAsync runAsync接受一个Runable的实现,无返回值 CompletableFuture.runAsync(()->System.out.println("无返回结果的运行")); supplyAsync接受一个Supplier的实现,有返回值 Com 阅读全文
posted @ 2022-06-29 14:51 Hitechr 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 需要的工具 PotPlayer、油猴tampermonkey、坚果(这个不用下载,有个账号就行) 下载地址:百度网盘 步骤 安装油猴tampermonkey 拖拽Tampermonkey_4.14.crx过程chrome浏览器上,如果提示安装失败,则在扩展程序中打开开发者模式 安装PotPlayer 阅读全文
posted @ 2022-06-28 16:11 Hitechr 阅读(7956) 评论(0) 推荐(1) 编辑
摘要: 1014.最佳观光组合 难度[中等] 给你一个正整数数组 values,其中 values[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的 距离 为 j - i。 一对景点(i < j)组成的观光组合的得分为 values[i] + values[j] + i - j ,也就是 阅读全文
posted @ 2021-09-08 15:01 Hitechr 阅读(45) 评论(0) 推荐(0) 编辑
摘要: 918.环形子数组的最大和 难度[中等] 给定一个由整数数组 A 表示的环形数组 C,求 C 的非空子数组的最大可能和。 在此处,环形数组意味着数组的末端将会与开头相连呈环状。(形式上,当0 <= i < A.length 时 C[i] = A[i],且当 i >= 0 时 C[i+A.length 阅读全文
posted @ 2021-09-08 15:00 Hitechr 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 53.最大子序和 难度[简单] 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。 示例 2: 阅读全文
posted @ 2021-09-08 14:59 Hitechr 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 70.爬楼梯 难度: 【简单】 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 阅读全文
posted @ 2021-08-11 18:10 Hitechr 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 基础知识 多版本并发控制MVCC Mysql的InnoDB存储引擎是基于多版本并开发控制协议实现的,MVCC的好处是读不加锁,读写bu不冲突,读写不冲突大大提高了系统的并发能力。 MVCC是怎么提高并发能力 不再单纯的使用行级锁来进行数据库的并发控制,而是把数据行与多个版本进行结合起来,就可以实现非 阅读全文
posted @ 2021-08-11 18:09 Hitechr 阅读(104) 评论(0) 推荐(0) 编辑