Bagikan melalui


Collections.SynchronizedMap(IDictionary) Metode

Definisi

Mengembalikan peta yang disinkronkan (aman utas) yang didukung oleh peta yang ditentukan.

[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

Parameter

m
IDictionary

peta yang akan "dibungkus" dalam peta yang disinkronkan.

Mengembalikan

tampilan yang disinkronkan dari peta yang ditentukan.

Atribut

Keterangan

Mengembalikan peta yang disinkronkan (aman utas) yang didukung oleh peta yang ditentukan. Untuk menjamin akses serial, sangat penting bahwa semua/akses kuat yang kuat><> ke peta backing dicapai melalui peta yang <dikembalikan.

Sangat penting bahwa pengguna menyinkronkan secara manual pada peta yang dikembalikan saat melintas salah satu tampilan koleksinya melalui Iterator, Spliterator atau 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());
             }

Kegagalan untuk mengikuti saran ini dapat mengakibatkan perilaku non-deterministik.

Peta yang dikembalikan akan dapat diserialisasikan jika peta yang ditentukan dapat diserialisasikan.

Dokumentasi Java untuk java.util.Collections.synchronizedMap(java.util.Map<K, V>).

Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.

Berlaku untuk