Share via


ImmutableInterlocked Kelas

Definisi

Berisi mekanisme pertukaran yang saling diblokir untuk koleksi yang tidak dapat diubah.

Paket NuGet: System.Collections.Immutable (tentang koleksi yang tidak dapat diubah dan cara menginstal)

public ref class ImmutableInterlocked abstract sealed
public static class ImmutableInterlocked
type ImmutableInterlocked = class
Public Class ImmutableInterlocked
Warisan
ImmutableInterlocked

Metode

AddOrUpdate<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TValue>, Func<TKey,TValue,TValue>)

Mendapatkan nilai dari kamus setelah menambahkannya atau memperbarui entri yang ada.

AddOrUpdate<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue, Func<TKey,TValue,TValue>)

Mendapatkan nilai dari kamus setelah menambahkannya atau memperbarui entri yang ada.

Enqueue<T>(ImmutableQueue<T>, T)

Secara atomik mengantrekan elemen ke akhir antrean.

GetOrAdd<TKey,TValue,TArg>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TArg,TValue>, TArg)

Mendapatkan nilai untuk kunci yang ditentukan dari kamus, atau jika kunci tidak ditemukan, menambahkan nilai baru ke kamus.

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TValue>)

Mendapatkan nilai untuk kunci yang ditentukan dari kamus, atau jika kunci tidak ditemukan, menambahkan nilai baru ke kamus.

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue)

Mendapatkan nilai untuk kunci yang ditentukan dari kamus, atau jika kunci tidak ditemukan, menambahkan nilai baru ke kamus.

InterlockedCompareExchange<T>(ImmutableArray<T>, ImmutableArray<T>, ImmutableArray<T>)

Membandingkan dua array yang tidak dapat diubah untuk kesetaraan dan, jika sama, menggantikan salah satu array.

InterlockedExchange<T>(ImmutableArray<T>, ImmutableArray<T>)

Mengatur array ke array yang ditentukan dan mengembalikan referensi ke array asli, sebagai operasi atomik.

InterlockedInitialize<T>(ImmutableArray<T>, ImmutableArray<T>)

Mengatur array ke array yang ditentukan jika array belum diinisialisasi.

Push<T>(ImmutableStack<T>, T)

Mendorong elemen baru ke tumpukan.

TryAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue)

Menambahkan kunci dan nilai yang ditentukan ke kamus jika kunci tidak ada dalam kamus.

TryDequeue<T>(ImmutableQueue<T>, T)

Secara atomik menghapus dan mengembalikan elemen yang ditentukan di kepala antrean, jika antrean tidak kosong.

TryPop<T>(ImmutableStack<T>, T)

Menghapus elemen dari bagian atas tumpukan, jika ada elemen yang akan dihapus.

TryRemove<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue)

Menghapus elemen dengan kunci yang ditentukan, jika kunci ada.

TryUpdate<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue, TValue)

Mengatur kunci yang ditentukan ke nilai yang ditentukan jika kunci yang ditentukan sudah diatur ke nilai tertentu.

Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg)

Mengubah array yang tidak dapat diubah di tempat dengan semantik transaksi penguncian optimis melalui fungsi transformasi tertentu. Transformasi dicoba kembali sebanyak yang diperlukan untuk memenangkan balapan penguncian optimis.

Update<T,TArg>(T, Func<T,TArg,T>, TArg)

Mengubah nilai di tempat dengan semantik transaksi penguncian optimis melalui fungsi transformasi tertentu. Transformasi dicoba kembali sebanyak yang diperlukan untuk memenangkan balapan penguncian optimis.

Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>)

Mengubah array yang tidak dapat diubah di tempat dengan semantik transaksi penguncian optimis melalui fungsi transformasi tertentu. Transformasi dicoba kembali sebanyak yang diperlukan untuk memenangkan balapan penguncian optimis.

Update<T>(T, Func<T,T>)

Mengubah nilai di tempat dengan semantik transaksi penguncian optimis melalui fungsi transformasi tertentu. Transformasi dicoba kembali sebanyak yang diperlukan untuk memenangkan balapan penguncian optimis.

Berlaku untuk

Keamanan Thread

Jenis ini aman untuk utas.