次の方法で共有


Collections.SynchronizedSortedMap(IDictionary) メソッド

定義

指定した並べ替えられたマップに基づいて同期された (スレッド セーフな) 並べ替えられたマップを返します。

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

パラメーター

m
IDictionary

同期された並べ替えられたマップに "ラップ" される並べ替えられたマップ。

戻り値

指定した並べ替えられたマップの同期ビュー。

属性

注釈

指定した並べ替えられたマップに基づいて同期された (スレッド セーフな) 並べ替えられたマップを返します。 シリアル アクセスを保証するには、返された並べ替えられたマップ (またはそのビュー) を使用して、バッキングの並べ替えられたマップに対する強力>な全</強力>なアクセスを実現することが重要<です。

ユーザーは、返された並べ替えられたマップで、そのコレクション ビュー、またはいずれかのビューのコレクション subMapStreamheadMaptailMapIteratorSpliterator ビューを走査する際に、手動で同期することが不可欠です。

SortedMap m = Collections.synchronizedSortedMap(new TreeMap());
                 ...
             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());
             }

または

SortedMap m = Collections.synchronizedSortedMap(new TreeMap());
             SortedMap m2 = m.subMap(foo, bar);
                 ...
             Set s2 = m2.keySet();  // Needn't be in synchronized block
                 ...
             synchronized (m) {  // Synchronizing on m, not m2 or s2!
                 Iterator i = s2.iterator(); // Must be in synchronized block
                 while (i.hasNext())
                     foo(i.next());
             }

このアドバイスに従わないと、非決定的な動作が発生する可能性があります。

指定した並べ替えられたマップがシリアル化可能な場合、返される並べ替えられたマップはシリアル化可能になります。

の Java ドキュメントjava.util.Collections.synchronizedSortedMap(java.util.SortedMap<K, V>)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象