摘要: 一、JMM与原子性 Java中对基本数据类型变量的读取赋值都是原子性的,对引用类型变量的读取和赋值也是原子性。这类操作都是不可被中断的,要么执行,要么不执行。 (1) 赋值操作:x = 10; 操作是原子性。 (2) 赋值操作:y = x; 操作是非原子性。将变量x赋值给y,包含两个重要步骤: 1) 阅读全文
posted @ 2020-05-15 23:25 Aidan_Chen 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 一、CPU Cache模型 1.1 产生原因 在计算机中,所有的运算操作都是由CPU的寄存器完成的,CPU指令的执行过程需要涉及数据的读取和写入操作,CPU访问的所有数据都来自主存。随着技术进步,CPU的处理速度与内存的访问速度之间的差距越来越大,此时CPU直连内存的访问方式会限制CPU,降低CPU 阅读全文
posted @ 2020-05-15 23:21 Aidan_Chen 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 一、总述 String是字符串常量,StringBuffer和StringBuilder是字符串变量;StringBuffer线程安全而StringBuilder是不安全的 二、String与两者的区别 String: 1 public final class String 2 implements 阅读全文
posted @ 2020-04-25 16:04 Aidan_Chen 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 一、概述 根据JavaAPI所述,Java 程序中的所有字符串字面值(如 "abc" )都是String类的实例实现;字符串是常量,它们的值在创建之后不能更改,因此它是可以共享的;字符串缓冲区支持可变的字符串;Java 语言提供对字符串串联符号("+")以及将其他对象转换为字符串的特殊支持;字符串串 阅读全文
posted @ 2020-04-25 00:32 Aidan_Chen 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一、什么是操作系统 1.1 定义 用户角度上(对上):为应用程序提供服务,是一个控制程序,能够管理应用程序,如:限制不同应用占用不同资源;为应用程序提供不同服务,如:IO服务、声卡网卡服务; 内部程序角度(对下):资源管理,管理外设、分配资源 1.2 功能 操作系统将CPU<——>进程,磁盘<——> 阅读全文
posted @ 2020-03-18 23:46 Aidan_Chen 阅读(216) 评论(0) 推荐(0) 编辑