Язык

Collections.SynchronizedSet(ICollection) Метод

Определение

Возвращает синхронизированный (потокобезопасный) набор, поддерживаемый указанным набором.

[Android.Runtime.Register("synchronizedSet", "(Ljava/util/Set;)Ljava/util/Set;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static System.Collections.ICollection SynchronizedSet(System.Collections.ICollection s);
[<Android.Runtime.Register("synchronizedSet", "(Ljava/util/Set;)Ljava/util/Set;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedSet : System.Collections.ICollection -> System.Collections.ICollection

Параметры

s
ICollection

Набор, который должен быть "упакован" в синхронизированном наборе.

Возвращаемое значение

синхронизированное представление указанного набора.

Атрибуты

Комментарии

Возвращает синхронизированный (потокобезопасный) набор, поддерживаемый указанным набором. Чтобы гарантировать последовательный доступ, важно <обеспечить надежный и< надежный>> доступ к резервному набору с помощью возвращаемого набора.

Очень важно, чтобы пользователь вручную синхронизировал возвращаемую коллекцию при обходе через Iteratorили SpliteratorStream:

Set s = Collections.synchronizedSet(new HashSet());
                 ...
             synchronized (s) {
                 Iterator i = s.iterator(); // Must be in the synchronized block
                 while (i.hasNext())
                     foo(i.next());
             }

Неспособность следовать этому совету может привести к недетерминированному поведению.

Возвращаемый набор будет сериализуемым, если указанный набор сериализуется.

Java документации по java.util.Collections.synchronizedSet(java.util.Set<T>).

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Применяется к