摘要: netty 可以学习的不仅是网络库,还包含了线程模型、如何写java异步交互、定制的缓存模型、对于直接内存的池化管理、内部类的巧妙用法、优秀的设计模式、以及对于一些罕见网络通信的bug的处理、跨平台的思考。 注: 堆外内存:堆内存容易受GC影响导致网络传输下因GC的影响导致内存地址变化,内存泄漏,减 阅读全文
posted @ 2019-10-02 10:38 JoinFyc 阅读(91) 评论(0) 推荐(0)
摘要: Java代码编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令。 2.1 volatile的应用 volatile是轻量级的synchronized,它在多处理器开发中保证了共 阅读全文
posted @ 2018-09-28 21:23 JoinFyc 阅读(106) 评论(0) 推荐(0)
摘要: 1.1 上下文切换 并发编程的目的是为了让程序运行的更快,但是并不是启动更多的线程就能让程序最大限度地并发执行。 即使是单核处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制,线程是CPU最小调度单位,时间片是CPU分配给各个线程的时间,因为时间片非常短,所以CPU通过不 阅读全文
posted @ 2018-09-27 16:03 JoinFyc 阅读(80) 评论(0) 推荐(0)