다음을 통해 공유


Collections.SynchronizedMap(IDictionary) 메서드

정의

지정된 맵에서 지원되는 동기화된(스레드로부터 안전한) 맵을 반환합니다.

[Android.Runtime.Register("synchronizedMap", "(Ljava/util/Map;)Ljava/util/Map;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public static System.Collections.IDictionary SynchronizedMap (System.Collections.IDictionary m);
[<Android.Runtime.Register("synchronizedMap", "(Ljava/util/Map;)Ljava/util/Map;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
static member SynchronizedMap : System.Collections.IDictionary -> System.Collections.IDictionary

매개 변수

m
IDictionary

동기화된 맵에서 "래핑"할 맵입니다.

반환

지정된 맵의 동기화된 뷰입니다.

특성

설명

지정된 맵에서 지원되는 동기화된(스레드로부터 안전한) 맵을 반환합니다. 직렬 액세스를 보장하기 위해 반환된 맵을 통해 백업 맵에 대한 강력한>모든</강력한> 액세스를 수행하는 것이 중요<합니다.

또는 다음을 통해 IteratorSpliterator Stream컬렉션 뷰를 트래버스할 때 사용자가 반환된 맵에서 수동으로 동기화해야 합니다.

Map m = Collections.synchronizedMap(new HashMap());
                 ...
             Set s = m.keySet();  // Needn't be in synchronized block
                 ...
             synchronized (m) {  // Synchronizing on m, not s!
                 Iterator i = s.iterator(); // Must be in synchronized block
                 while (i.hasNext())
                     foo(i.next());
             }

이 조언을 따르지 않으면 비결정적 동작이 발생할 수 있습니다.

지정된 맵을 직렬화할 수 있는 경우 반환된 맵을 serialize할 수 있습니다.

에 대한 java.util.Collections.synchronizedMap(java.util.Map<K, V>)Java 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

적용 대상