Bagikan melalui


System.Threading Ruang nama

Menyediakan kelas dan antarmuka yang memungkinkan pemrograman multithreaded. Selain kelas untuk menyinkronkan aktivitas utas dan akses ke data (Mutex, , Monitor, AutoResetEventInterlocked, dan sebagainya), namespace layanan ini mencakup ThreadPool kelas yang memungkinkan Anda menggunakan kumpulan utas yang disediakan sistem, dan Timer kelas yang menjalankan metode panggilan balik pada utas kumpulan utas.

Kelas

AbandonedMutexException

Pengecualian yang dilemparkan ketika satu utas memperoleh objek yang telah ditinggalkan utas Mutex lain dengan keluar tanpa melepaskannya.

AsyncLocal<T>

Mewakili data sekitar yang lokal untuk alur kontrol asinkron tertentu, seperti metode asinkron.

AutoResetEvent

Mewakili peristiwa sinkronisasi utas yang, ketika disinyalkan, merilis satu utas tunggu tunggal lalu mengatur ulang secara otomatis. Kelas ini tidak dapat diwariskan.

Barrier

Memungkinkan beberapa tugas untuk bekerja secara kooperatif pada algoritma secara paralel melalui beberapa fase.

BarrierPostPhaseException

Pengecualian yang dilemparkan ketika tindakan Barrier pasca-fase gagal.

CancellationTokenSource

Sinyal ke CancellationToken bahwa itu harus dibatalkan.

CompressedStack

Menyediakan metode untuk mengatur dan menangkap tumpukan terkompresi pada utas saat ini. Kelas ini tidak dapat diwariskan.

CountdownEvent

Mewakili primitif sinkronisasi yang disinyalir ketika jumlahnya mencapai nol.

EventWaitHandle

Mewakili peristiwa sinkronisasi utas.

EventWaitHandleAcl

Menyediakan metode ekstensi khusus Windows untuk membuat EventWaitHandle objek dengan keamanan daftar kontrol akses (ACL) tertentu.

ExecutionContext

Mengelola konteks eksekusi untuk utas saat ini. Kelas ini tidak dapat diwariskan.

HostExecutionContext

Merangkum dan menyebarluaskan konteks eksekusi host di seluruh utas.

HostExecutionContextManager

Menyediakan fungsionalitas yang memungkinkan host runtime bahasa umum untuk berpartisipasi dalam alur, atau migrasi, dari konteks eksekusi.

Interlocked

Menyediakan operasi atomik untuk variabel yang dibagikan oleh beberapa utas.

LazyInitializer

Menyediakan rutinitas inisialisasi malas.

Lock

Menyediakan mekanisme untuk mencapai pengecualian bersama di wilayah kode antara utas yang berbeda.

LockRecursionException

Pengecualian yang dilemparkan ketika entri rekursif ke dalam kunci tidak kompatibel dengan kebijakan rekursi untuk kunci.

ManualResetEvent

Mewakili peristiwa sinkronisasi utas yang, ketika disinyalkan, harus direset secara manual. Kelas ini tidak dapat diwariskan.

ManualResetEventSlim

Mewakili peristiwa sinkronisasi utas yang, ketika disinyalkan, harus direset secara manual. Kelas ini adalah alternatif ringan untuk ManualResetEvent.

Monitor

Menyediakan mekanisme yang menyinkronkan akses ke objek.

Mutex

Primitif sinkronisasi yang juga dapat digunakan untuk sinkronisasi antarproscess.

MutexAcl

Menyediakan metode ekstensi khusus Windows untuk membuat Mutex objek dengan keamanan daftar kontrol akses (ACL) tertentu.

Overlapped

Menyediakan representasi terkelola dari struktur Win32 OVERLAPPED , termasuk metode untuk mentransfer informasi dari Overlapped instans ke NativeOverlapped struktur.

PeriodicTimer

Menyediakan timer berkala yang memungkinkan menunggu secara asinkron untuk kutu timer.

PreAllocatedOverlapped

Mewakili status yang telah dialokasikan sebelumnya untuk operasi I/O asli yang tumpang tindih.

ReaderWriterLock

Mendefinisikan kunci yang mendukung penulis tunggal dan beberapa pembaca.

ReaderWriterLockSlim

Mewakili kunci yang digunakan untuk mengelola akses ke sumber daya, memungkinkan beberapa utas untuk membaca atau akses eksklusif untuk menulis.

RegisteredWaitHandle

Mewakili handel yang telah didaftarkan saat memanggil RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean). Kelas ini tidak dapat diwariskan.

Semaphore

Membatasi jumlah utas yang dapat mengakses sumber daya atau kumpulan sumber daya secara bersamaan.

SemaphoreAcl

Menyediakan metode ekstensi khusus Windows untuk membuat Semaphore objek dengan keamanan daftar kontrol akses (ACL) tertentu.

SemaphoreFullException

Pengecualian yang dilemparkan ketika Release metode dipanggil pada semaphore yang jumlahnya sudah maksimal.

SemaphoreSlim

Mewakili alternatif ringan untuk Semaphore yang membatasi jumlah utas yang dapat mengakses sumber daya atau kumpulan sumber daya secara bersamaan.

SynchronizationContext

Menyediakan fungsionalitas dasar untuk menyebarkan konteks sinkronisasi dalam berbagai model sinkronisasi.

SynchronizationLockException

Pengecualian yang dilemparkan ketika metode mengharuskan pemanggil untuk memiliki kunci pada Monitor tertentu, dan metode ini dipanggil oleh penelepon yang tidak memiliki kunci tersebut.

Thread

Membuat dan mengontrol utas, menetapkan prioritasnya, dan mendapatkan statusnya.

ThreadAbortException

Pengecualian yang dilemparkan ketika panggilan dilakukan ke Abort(Object) metode . Kelas ini tidak dapat diwariskan.

ThreadExceptionEventArgs

Menyediakan data untuk peristiwa tersebut ThreadException .

ThreadingAclExtensions

Menyediakan metode ekstensi khusus Windows untuk mengelola deskriptor keamanan daftar kontrol akses (ACL) untuk EventWaitHandle, , Mutexdan Semaphore.

ThreadInterruptedException

Pengecualian yang dilemparkan ketika Thread terganggu saat dalam keadaan menunggu.

ThreadLocal<T>

Menyediakan penyimpanan data utas-lokal.

ThreadPool

Menyediakan kumpulan utas yang dapat digunakan untuk menjalankan tugas, memposting item kerja, memproses I/O asinkron, menunggu atas nama utas lain, dan timer proses.

ThreadPoolBoundHandle

Mewakili handel I/O yang terikat ke kumpulan alur sistem dan memungkinkan komponen tingkat rendah untuk menerima pemberitahuan untuk operasi I/O asinkron.

ThreadStartException

Pengecualian yang dilemparkan ketika kegagalan terjadi di utas terkelola setelah utas sistem operasi yang mendasar telah dimulai, tetapi sebelum utas siap untuk menjalankan kode pengguna.

ThreadStateException

Pengecualian yang dilemparkan ketika tidak Thread valid ThreadState untuk panggilan metode.

Timeout

Berisi konstanta yang menentukan interval waktu habis tak terbatas. Kelas ini tidak dapat diwariskan.

Timer

Menyediakan mekanisme untuk menjalankan metode pada utas kumpulan utas pada interval yang ditentukan. Kelas ini tidak dapat diwariskan.

Volatile

Berisi metode untuk melakukan operasi memori yang volatil.

WaitHandle

Merangkum objek khusus sistem operasi yang menunggu akses eksklusif ke sumber daya bersama.

WaitHandleCannotBeOpenedException

Pengecualian yang dilemparkan ketika upaya dilakukan untuk membuka mutex sistem, semaphore, atau penanganan tunggu peristiwa yang tidak ada.

WaitHandleExtensions

Menyediakan metode kenyamanan untuk bekerja dengan handel yang aman untuk handel tunggu.

Struct

AsyncFlowControl

Menyediakan fungsionalitas untuk memulihkan migrasi, atau alur, dari konteks eksekusi antar utas.

AsyncLocalValueChangedArgs<T>

Kelas yang menyediakan informasi perubahan data ke AsyncLocal<T> instans yang mendaftar untuk pemberitahuan perubahan.

CancellationToken

Menyebarkan pemberitahuan bahwa operasi harus dibatalkan.

CancellationTokenRegistration

Mewakili delegasi panggilan balik yang telah terdaftar dengan CancellationToken.

Lock.Scope

Lock Mewakili yang mungkin telah dimasukkan.

LockCookie

Menentukan kunci yang mengimplementasikan semantik penulis tunggal/multi-pembaca. Ini adalah jenis nilai.

NativeOverlapped

Menyediakan tata letak eksplisit yang terlihat dari kode yang tidak dikelola dan yang akan memiliki tata letak yang sama dengan struktur Win32 TUMPANG TINDIH dengan bidang tambahan yang dipesan di akhir.

SpinLock

Menyediakan kunci pengecualian bersama primitif di mana utas mencoba memperoleh kunci menunggu dalam perulangan berulang kali memeriksa sampai kunci tersedia.

SpinWait

Menyediakan dukungan untuk menunggu berbasis spin.

Antarmuka

IThreadPoolWorkItem

Mewakili item kerja yang dapat dieksekusi oleh ThreadPool.

ITimer

Mewakili timer yang dapat mengubah waktu dan periode jatuh temponya.

Enum

ApartmentState

Menentukan status apartemen dari Thread.

EventResetMode

Menunjukkan apakah direset EventWaitHandle secara otomatis atau manual setelah menerima sinyal.

LazyThreadSafetyMode

Menentukan bagaimana Lazy<T> instans menyinkronkan akses di antara beberapa utas.

LockRecursionPolicy

Menentukan apakah kunci dapat dimasukkan beberapa kali dengan utas yang sama.

ThreadPriority

Menentukan prioritas penjadwalan dari Thread.

ThreadState

Menentukan status eksekusi dari .Thread

Delegasikan

ContextCallback

Mewakili metode yang akan dipanggil dalam konteks baru.

IOCompletionCallback

Menerima kode kesalahan, jumlah byte, dan jenis nilai yang tumpang tindih saat operasi I/O selesai pada kumpulan utas.

ParameterizedThreadStart

Mewakili metode yang dijalankan pada Thread.

SendOrPostCallback

Mewakili metode yang akan dipanggil ketika pesan akan dikirim ke konteks sinkronisasi.

ThreadExceptionEventHandler

Mewakili metode yang akan menangani ThreadException peristiwa Application.

ThreadStart

Mewakili metode yang dijalankan pada Thread.

TimerCallback

Mewakili metode yang menangani panggilan dari Timer.

WaitCallback

Mewakili metode panggilan balik yang akan dijalankan oleh utas kumpulan utas.

WaitOrTimerCallback

Mewakili metode yang akan dipanggil ketika WaitHandle sinyal atau waktu habis.