常见的线程安全操作
①加锁同步 synchronized Lock等
②wait() notify()线程调度 已实现执行的同步
③ThreadLocal局部变量 每一个线程都有一份数据
④Semaphore 信号量
⑤volatile 保证一个变量在线程中可见
等 等
接下来讨论集合的多线程安全
原始集合框架包含三个接口:List、Map 和 Set。这三种集合是我们平常使用最多的集合,当集合遇到多线程时,我们必须要考虑多线程的问题,
比如说一个线程1不断读取集合线程2不断往集合放入数据,这时就会出现问题
我们都知道vector,hashtable是在Java1.0就引入的集合,两个都是线程安全的,但是现在已很少使用,原因就是内部实现的线程安全太消耗资源
java.util.concurrent 是什么?
java.util.concurrent 包含许多线程安全、测试良好、高性能的并发构建块。创建 java.util.concurrent 的目的就是要实现 Collection 框架对数据结构所执行的并发操作。通过提供一组可靠的、高性能并发构建块,开发人员可以提高并发类的线程安全、可伸缩性、性能、可读性和可靠性,
网友评论