2018年7月6日
摘要: 话说在《操作系统原理》这门课里面,我们学到了很多概念:进程、线程、锁、PV操作、读写者问题等等,大家还记得么?(估计有些概念早已忘记了吧,哈哈哈~) 其中关于进程、线程和锁的东西是我们平时工作中用到最多的:服务器接收到用户请求,需要用一个进程或者一个线程去处理,然后操作内存、文件或者数据库的时候,可 阅读全文
posted @ 2018-07-06 17:33 爱养花的码农 阅读(1773) 评论(0) 推荐(1)
  2018年6月14日
摘要: netty的数据容器 网络数据的基本单位大多为字节,Java NIO 提供了ByteBuffer 作为它的字节容器,但使用起来过于复杂和繁琐。在Netty中, ByteBuffer 替代品是ByteBuf,一个强大的实现,既解决了JDK API 的局限性,又为网络应用程序的开发者提供了更好的API。 阅读全文
posted @ 2018-06-14 17:49 爱养花的码农 阅读(163) 评论(0) 推荐(0)
  2018年6月13日
摘要: 注册表被称为Windows操作系统的核心,它的工作原理实质是一个庞大的数据库,存放了关于计算机硬件的配置信息、系统和应用软件的初始化信息、应用软件和文档文件的关联关系、硬件设备的说明以及各种状态信息和数据,包括Windows操作时不断引用的信息。例如:系统中的硬件资源、硬件信息、分配正在使用的端口、 阅读全文
posted @ 2018-06-13 10:58 爱养花的码农 阅读(6707) 评论(0) 推荐(1)
  2018年5月17日
摘要: 转载 以下是学习过程中查询的资料,别人总结的资料,比较容易理解(站在各位巨人的肩膀上,望博主勿究) 创建型抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html工厂方法 http://www.cnblogs 阅读全文
posted @ 2018-05-17 09:24 爱养花的码农 阅读(177) 评论(0) 推荐(0)
  2018年5月11日
摘要: 写的很好,转 ConcurrentHashMap总结 https://my.oschina.net/hosee/blog/675884 1. Java集合 ConcurrentHashMap原理分析 http://www.cnblogs.com/ITtangtang/p/3948786.html 2 阅读全文
posted @ 2018-05-11 17:33 爱养花的码农 阅读(167) 评论(0) 推荐(0)
摘要: 今天研读Java并发容器和框架时,看到为什么要使用ConcurrentHashMap时,其中有一个原因是:线程不安全的HashMap, HashMap在并发执行put操作时会引起死循环,是因为多线程会导致HashMap的Entry链表形成环形数据结构,查找时会陷入死循环。纠起原因看了其他的博客,都比 阅读全文
posted @ 2018-05-11 12:24 爱养花的码农 阅读(8305) 评论(2) 推荐(0)
  2018年5月9日
摘要: 用Java语言开发的同学对 ThreadLocal 应该都不会陌生,这个类的使用场景很多,特别是在一些框架中经常用到,比如数据库事务操作,还有MVC框架中数据跨层传递。这里我们简要探讨下 ThreadLocal 的内部实现及可能存在的问题。 首先问自己一个问题,让自己实现一个这个的功能类的话怎么去做 阅读全文
posted @ 2018-05-09 13:11 爱养花的码农 阅读(216) 评论(0) 推荐(0)
摘要: LRU全称是Least Recently Used,即最近最久未使用的意思。 LRU算法的设计原则是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。也就是说,当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。 实现LRU 1.用一个数组来存储数据,给每一个数据项 阅读全文
posted @ 2018-05-09 11:27 爱养花的码农 阅读(292) 评论(0) 推荐(0)
  2018年4月9日
摘要: 阅读目录 一、内部类的几种创建方法: 二、神马是内部类? 三、最后来说说final关键字: 回到顶部 一、内部类的几种创建方法: 1、成员内部类 2、方法内部类 3、匿名内部类 1 interface USB { 2 public abstract void start() 3 } 4 class 阅读全文
posted @ 2018-04-09 15:16 爱养花的码农 阅读(4932) 评论(2) 推荐(2)
  2018年4月4日
摘要: JDK中Timer类主要负责计划任务的功能,即制定时间点执行某个任务。 注意: 1. 计划时间早于当前时间,任务会立即被执行。 2. 创建一个Timer就是启动一个新线程,默认情况下,需要把Timer设置为非守护线程,否则计划任务可能没有机会执行。 3. 允许Timer中有多个TimerTask任务 阅读全文
posted @ 2018-04-04 13:21 爱养花的码农 阅读(226) 评论(0) 推荐(0)