Collections.SynchronizedCollection(ICollection) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回由指定集合支持的已同步(线程安全)集合。
[Android.Runtime.Register("synchronizedCollection", "(Ljava/util/Collection;)Ljava/util/Collection;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static System.Collections.ICollection SynchronizedCollection (System.Collections.ICollection c);
[<Android.Runtime.Register("synchronizedCollection", "(Ljava/util/Collection;)Ljava/util/Collection;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedCollection : System.Collections.ICollection -> System.Collections.ICollection
参数
要“包装”在同步集合中的集合。
返回
指定集合的同步视图。
- 属性
注解
返回由指定集合支持的已同步(线程安全)集合。 为了保证串行访问,必须 <通过返回的集合完成对后盾集合的强>所有</强> 访问。
用户必须在遍Iterator
Spliterator
历返回的集合时手动同步,或者Stream
:
Collection c = Collections.synchronizedCollection(myCollection);
...
synchronized (c) {
Iterator i = c.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
未能遵循此建议可能会导致非确定性行为。
返回的集合不会将和equals
操作传递到hashCode
支持集合,而是依赖于 Object
'equals 和 hashCode 方法。 在支持集合是集或列表的情况下,必须保留这些操作的协定。
如果指定的集合可序列化,则返回的集合将可序列化。
适用于 . 的 java.util.Collections.synchronizedCollection(java.util.Collection<T>)
Java 文档
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。