Thread
文章平均质量分 74
MichaelSongs
这个作者很懒,什么都没留下…
展开
-
Java多线程之原子性 volatile、atomicInteger、synchronized测试
Java自增操作不是原子性操作,有三步:读,增,写; AtomicInteger: 一个提供原子操作的Integer的类。 一种线程安全的加减操作接口, 相比 synchroized、lock 高效. synchroized: 可以保证多线程下原子操作,不过效率低; volatile: 关键字,只能保证可见性,无法保证对变量的任何操作都是原子性的。 public clas原创 2017-09-30 22:25:30 · 6932 阅读 · 0 评论 -
ThreadLocal 概述
ThreadLocal 使用这个工具类可以很简洁地编写出优美的多线程程序,ThreadLocal并不是一个Thread,而是Thread的局部变量。 ThreadLocal是解决线程安全问题一个很好的思路,它通过为每个线程提供一个独立的变量副本解决了变量并发访问的冲突问题。在很多情况下,ThreadLocal比直接使用synchronized同步机制解决线程安全问题更简单,更方便,且结果程序拥原创 2017-09-30 22:12:04 · 3394 阅读 · 0 评论 -
线程池的原理及实现
1、线程池简介: 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。 如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。 一个线程原创 2017-07-03 17:32:47 · 2870 阅读 · 0 评论 -
Java关键字transient和volatile
transient 词义:短暂的 首先说说“序列化”,把一个对象的表示转化为字节流的过程称为串行化(也称为序列化,serialization),从字节流中把对象重建出来称为反串行化(也称为为反序列化,deserialization)。transient 为不应被串行化的数据提供了一个语言级的标记数据方法。 transient是类型修饰符,只能用来修饰字段。在对象序列化的过程中,标记为tran原创 2017-08-31 21:04:16 · 2851 阅读 · 0 评论