- 博客(3)
- 收藏
- 关注
原创 单例双重锁线程不安全
这一行分为三步操作 1.分配内存空间 2.初始化对象 3.instance引用指向内存空间 正常执行顺序1、2、3 重排序后执行顺序可能为1、3、2 线程A执行1、3后让出cpu,此时还未执行2,别的线程拿到cpu,发现instance不为null,直接返回使用,就会有问题,因为instance还未初始化。 加上volatile可以防止指令重排序,使执行顺序一定为1、2、3...
2018-08-16 09:48:25 938 3
原创 操作系统追根溯源
1.inode上老沙的课记得讲过inode,但有些记不清了。一个分区由inode和数据块组成,数据块可以是目录或文件。 数据块为目录,则数据块中是目录项 数据块为文件,则数据块是文件的内容一个分区inode数量是确定的。df -i 看inode利用率df 看disk利用率一个inode对应一个文件2.设备和文件描述符的关系经常会疑惑stdin、std...
2018-05-15 11:03:09 296
原创 自己用Java写一个HTTP服务器和MVC框架
自己刚实现了一个轻量级的嵌入式http服务器,Java语言,基于nio。同时提供类似spring mvc的功能, 包括@Controller,@RequestMapping,参数注入等功能。项目地址:LightWebServer项目总计1700行java代码, {理解原理 + 不实现}三天左右,{理解原理 + 自己实现}需要一周左右。下面分享一下自己的学习步骤:1.学习nio相关知识简单来说nio...
2018-05-09 20:10:26 1835
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人