摘要:
Callable 接口 一、Java 5.0 在 java.util.concurrent 提供了 一个新的创建执行线程的方式(之前有继承Thread 和 实现Runnable):Callable 接口 Callable 接口类似于 Runnable ,两者都是为那些其 实例 可能被另外一个线程执行 阅读全文
摘要:
/*CountDownLatch 闭锁*/ CountDownLatch 是一各同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待 闭锁可以延迟线程的进度 直到 其到达终止状态,闭锁可以用来 /*确保某些活动直到其他活动都完成才继续执行*/ : 1.确保 某个计算 在其 阅读全文
摘要:
/*ConcurrentHashMap*/ Java 5.0 在 java.util.concurrent 包中提供了 多种 并发容器来改进同步容器的性能 ConcurrentHashMap 同步容器类 是 Java5 增加的一个线程安全的 哈希表。对于多线程的操作,介于HashMap 与 Hash 阅读全文
摘要:
前面提到,使用volatile无法保证 变量状态的原子性操作,所谓原子性,就是不可再分 如:i++的原子性问题,i++ 的操作实际上分为三个步骤 "读-改-写" (1)保存i的值(一个临时变量中) (2)递增i (3)返回已保存的值 当在并发的条件下执行 i++, 线程1执行 i++,先从主存中 获 阅读全文
摘要:
Java JUC 简介 在 Java 5.0 提供了 java.util.concurrent (简称JUC )包,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步 IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的 C 阅读全文