首页 > Java > java教程 > 正文

如何在Java中使集合线程安全?

WBOY
发布: 2023-08-31 14:53:06
转载
719 人浏览过

如何在Java中使集合线程安全?

专门处理集合的 java.util 包方法的 Collections 类,这些方法提供了涉及多态算法的各种附加操作。

此类提供了 synchronizedCollection() 方法的不同变体,如下所示 -

3
Sr.No 方法及说明
1 静态集合synchronizedCollection(Collectionc)

此方法接受任何集合对象,并返回由指定集合支持的同步(线程安全)集合。

2 静态列表synchronizedList(List列表)

此方法接受 List 接口的对象,返回由指定列表支持的同步(线程安全)列表。

静态地图synchronizedMap(地图米)

此方法接受 Map 接口的对象,并返回由指定映射支持的同步(线程安全)映射。

4 static SetsynchronizedSet(Set s)

此方法接受 Set 接口的对象,并且,返回由指定集合支持的同步(线程安全)集合。

5 static SortedMap synchronizedSortedMap(SortedMap m)

此方法接受 Map 接口的对象,并返回一个同步的(线程安全)由指定排序映射支持的排序映射。

6 staticSortedSetsynchronizedSortedSet(SortedSets)

此方法接受一个 SynchronizedSortedSet 接口的对象,并返回一个同步(线程安全)排序集按指定的排序集。

示例

 实时演示

import java.util.Collection;
import java.util.Collections;
import java.util.Vector;
public class CollectionReadOnly {
   public static void main(String[] args) {
      //Instantiating an ArrayList object
      Vector<String> vector = new Vector<String>();
      vector.add("JavaFx");
      vector.add("Java");
      vector.add("WebGL");
      vector.add("OpenCV");
      System.out.println(vector);
      Collection<String> synchronizedVector = Collections.synchronizedCollection(vector);
      System.out.println("Synchronized "+synchronizedVector);
      synchronizedVector.add("CoffeeScript");
   }
}
登录后复制

输出

[JavaFx, Java, WebGL, OpenCV]
Synchronized [JavaFx, Java, WebGL, OpenCV]
登录后复制

以上是如何在Java中使集合线程安全?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板