摘要: package com.sasworld.util; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jac 阅读全文
posted @ 2022-04-07 22:18 我家的猫儿不吃鱼 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 起名篇 通用原则 [1] 函数与变量名称要能够表达出其正确的含义,不要使用魔数(直接量) [2] 类名和对象都应该时名词或者名词短语,类名不应该是动词,毕竟类是对事物的抽象而不是行为的抽象(方法才是对行为的抽象) 变量命名原则 [1] 不轻易使用类型名称作为变量的后缀,例如使用List作为后缀时,该 阅读全文
posted @ 2022-01-22 15:49 我家的猫儿不吃鱼 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 内存管理策略 基本概念 内存可以看作是由一个很大的字节数组来组成的,每个字节都有各自的地址(在以字节寻址系统中),字节是操作系统的最小寻址单元。CPU根据程序计数器的值从内存中提取指令,这些指令又可能引对特定内存地址的额外加载与存储(读取操作数或者转储计算结果)。 基本硬件 CPU可以直接访问的通用 阅读全文
posted @ 2020-04-14 14:48 我家的猫儿不吃鱼 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 创建第一个Spring Boot项目 这里我考虑的是使用前后端分离的方式编写项目,前后端的数据通过交互JSON数据格式实现,下面演示如何一步一步搭建整个项目。 开发环境 IDEA JDK 1.8+ Maven 3.5+ FastJSON 创建项目 浏览器打开https://start.spring. 阅读全文
posted @ 2020-04-14 10:24 我家的猫儿不吃鱼 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 逻辑地址结构 32位的二级页表的逻辑地址结构中,前10位 p 1地址用于表示相应的二级页表, p 2中的地址表示相应页表中的页表项中保存的物理页的序号。二级页表能够检索的最大地址同样为2 p 1 2 p 2 2 d = 232。 二级页表地址转换 地址转换示意图: 初始时只有一级页目录表在内存中,在 阅读全文
posted @ 2020-04-06 09:35 我家的猫儿不吃鱼 阅读(2241) 评论(0) 推荐(0) 编辑
摘要: 读者 写者问题 在读者 写者问题中,只对共享数据进行读取的进程为读者进程,修改共享数据的进程称为写者进程。多个读者可同时读取共享数据而不会导致出现错误,但是任何时刻多个写者进程不能同时修改数据,写者进程和读者进程也不能同时访问共享数据。读者 写者问题的解决策略有不同的倾向。 读者优先 需要用到的共享 阅读全文
posted @ 2020-03-30 16:11 我家的猫儿不吃鱼 阅读(486) 评论(0) 推荐(0) 编辑
摘要: 进程 基本概念 为了保证多道程序设计系统中程序能够正确地运行,引入进程概念用于更好地控制和管理程序的执行。进程包括程序但不只是程序本身,它还包括程序运行过程中的一些状态数据信息以及描述特定进程的数据结构PCB(Process Control Block)。操作系统通过PCB来感知进程的存在,并根据P 阅读全文
posted @ 2020-03-15 21:18 我家的猫儿不吃鱼 阅读(636) 评论(0) 推荐(0) 编辑
摘要: ConcurrentLinkedQueue ConcurrentLinkedQueue内部的队列使用带头节点的单向链表实现,并且维持头尾两个指针,头指针出队、尾指针入队。该队列的出队入队操作都是线程安全的。 保证安全的方式 对于头尾指针均使用volatile关键字修饰从而保证可见性,对于头尾指针的修 阅读全文
posted @ 2019-10-07 10:30 我家的猫儿不吃鱼 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 抽象同步队列—AQS AbstractQueuedSynchronizer抽象同步队列,它是实现同步器的基础组件,并发包中锁的底层就是使用AQS实现的。如常见的ReentrantLock、CountDownlatch、semaphore等。 state变量 AQS最重要的一个变量——状态信息变量 , 阅读全文
posted @ 2019-10-05 16:14 我家的猫儿不吃鱼 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式 将某些操作的流程在类的方法中定义好,而将这些操作的具体步骤中的逻辑延迟到子类中去实现,这样子类可以在不改变操作流程的情况下,修改具体步骤中的逻辑。 这里定义操作执行流程的方法就称为模板方法,所有的子类都共享该方法,子类的多样性可以通过定义具体步骤的逻辑展现出来。 在模板方法模式中,需要 阅读全文
posted @ 2019-10-03 16:32 我家的猫儿不吃鱼 阅读(161) 评论(0) 推荐(0) 编辑