Collections.SynchronizedMap(IDictionary) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
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.