![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发
昕玫
求知而无欲
展开
-
Java高并发编程——为IO密集型应用设计线程数与划分任务
实际工作中的三类程序适用于以并发的形式来提速:1. 服务程序:同时响应多个用户请求2. 计算密集型程序:并发计算,将问题拆分为子任务、并发执行各子任务并最终将子任务的结果汇总合并。3. IO密集型程序(阻塞型):常需要阻塞等待的程序,比如说因为网络环境阻塞等待,因为IO读取阻塞等待。当一个任务阻塞在IO操作上时,我们可以立即切换执行其他任务或启动其他IO操作请求,这样并发就可以帮助我们原创 2014-03-29 22:51:07 · 5361 阅读 · 4 评论 -
通信协议与序列化方案的纠结: Protocol Buffer, thrift or hessian?
原地址:通信协议与序列化方案的纠结: Protocol Buffer, thrift or hessian?最早我用hessian作为java搜索服务中的通信协议和序列化方案。松耦合,部署,调用方便。这两年很多人跟我提起protocol buffer,thrift。特别是最近从不少地方的信息看到很多地方在用,也找到一些改用protocol buffer或者apache thri转载 2015-06-16 09:33:05 · 2841 阅读 · 0 评论 -
【并发】ThreadLocal源码浅析
最近被安利了ThreadLocal这个东西,认真看看源码是怎么回事。先上结论:ThreadLocal我理解就是一个线程本地变量,某个字段如果是用ThreadLocal封装起来的话,这个字段在被不同线程访问的时候每个线程会得到一个本线程独有的副本。各个线程读写的都会是自己的副本,互不影响。某个线程死亡时,它拥有的ThreadLocal对象副本会立刻被回收。原创 2016-07-26 16:05:15 · 593 阅读 · 0 评论 -
虚拟机中的锁优化简介(适应性自旋/锁粗化/锁削除/轻量级锁/偏向锁)
前天被问到Java中的Synchronize是怎么实现的,一直没有看这个知识点。现在补上。高效并发是JDK 1.6的一个重要主题,HotSpot虚拟机开发团队在这个版本上花费了大量的精力去实现各种锁优化技术,如适应性自旋(Adaptive Spinning)、锁削除(Lock Elimination)、锁膨胀(Lock Coarsening)、轻量级锁(Lightweight Lo转载 2016-07-21 15:18:36 · 918 阅读 · 0 评论