Microsoft.VisualStudio.Threading Ruang nama

Microsoft. Namespace VisualStudio.Threading berisi API untuk digunakan dalam proyek SDK Visual Studio. Anda harus menggunakan API ini untuk pemrograman asinkron dalam Visual Studio. Melakukannya membantu Anda menghindari kebuntuan

Pustaka ini didasarkan pada .NET Framework Task Parallel Library (TPL). Untuk informasi tentang pustaka ini, lihat Pustaka Paralel Tugas (TPL).

Kelas

Nama Deskripsi
AsyncAutoResetEvent

Implementasi asinkron dari AutoResetEvent.

AsyncBarrier

Penghalang asinkron yang memblokir signaler sampai semua peserta lain telah memberi sinyal.

AsyncCountdownEvent

Peristiwa hitung mundur gaya asinkron.

AsyncCrossProcessMutex

Mutex yang dapat dimasukkan secara asinkron.

AsyncLazy<T>

Pabrik nilai yang aman, malas, dan asinkron dievaluasi.

AsyncLazyInitializer

Lazily menjalankan delegasi yang memiliki beberapa efek samping (biasanya menginisialisasi sesuatu) sehingga delegasi berjalan paling banyak sekali.

AsyncLocal<T>

Menyimpan referensi sehingga tersedia untuk diambil dalam konteks panggilan yang sama.

AsyncManualResetEvent

Rasa ManualResetEvent yang dapat ditunggu secara asinkron.

AsyncQueue<T>

Antrean yang aman dan tidak dapat diantrekan secara asinkron.

AsyncReaderWriterLock

Kunci non-pemblokiran yang memungkinkan akses bersamaan, akses eksklusif, atau bersamaan dengan peningkatan ke akses eksklusif.

AsyncReaderWriterLock.Awaiter

Mengelola akses asinkron ke kunci.

AsyncReaderWriterResourceLock<TMoniker,TResource>

Kunci non-pemblokiran yang memungkinkan akses bersamaan, akses eksklusif, atau bersamaan dengan peningkatan ke akses eksklusif, membuat jatah khusus untuk sumber daya yang harus disiapkan untuk akses bersamaan atau eksklusif.

AsyncSemaphore

Kelas seperti asinkron SemaphoreSlim dengan sintaks rilis yang lebih nyaman.

AwaitExtensions

Metode ekstensi dan dapat ditunggu untuk .NET 4,5.

CancellationTokenExtensions

Ekstensi ke CancellationToken.

DelegatingJoinableTaskFactory

Kelas dasar JoinableTaskFactory untuk jenis turunan yang mendelegasikan beberapa pekerjaan mereka ke instans yang ada.

DispatcherExtensions

Metode ekstensi untuk WPF Dispatcher untuk interop yang JoinableTaskFactorylebih baik dengan .

HangReportContribution

Kontribusi ke laporan hang agregat.

IllegalSemaphoreUsageException

Pengecualian yang dilemparkan ketika kontrak dilanggar ReentrantSemaphore .

JoinableTask

Melacak operasi asinkron dan menyediakan kemampuan untuk Bergabung dengan operasi tersebut untuk menghindari kebuntuan sambil secara sinkron memblokir utas Utama untuk penyelesaian operasi.

JoinableTask<T>

Melacak operasi asinkron dan menyediakan kemampuan untuk Bergabung dengan operasi tersebut untuk menghindari kebuntuan sambil secara sinkron memblokir utas Utama untuk penyelesaian operasi.

JoinableTaskCollection

Kumpulan objek yang tidak lengkap JoinableTask .

JoinableTaskContext

Konteks umum di mana tugas yang dapat digabungkan dapat dibuat dan berinteraksi untuk menghindari kebuntuan.

JoinableTaskContext.HangDetails

Kelas untuk merangkum detail kemungkinan macet. Instans kelas ini JoinableTaskContext.HangDetails akan diteruskan ke JoinableTaskContextNode instans yang mendaftarkan pemberitahuan hang.

JoinableTaskContextException

Pengecualian yang dilemparkan ketika konfigurasi yang diberikan kepada JoinableTaskContext salah atau metode virtual ditimpa sehingga melanggar kontrak. Pengecualian ini tidak boleh tertangkap. Ini dilemparkan ketika aplikasi memiliki kesalahan pemrograman.

JoinableTaskContextNode

Sumber JoinableTaskFactory instans yang dapat disesuaikan.

JoinableTaskFactory

Pabrik untuk memulai tugas asinkron yang dapat mengurangi kebuntuan ketika tugas memerlukan utas Utama aplikasi dan utas Utama mungkin memblokir penyelesaian tugas.

NoMessagePumpSyncContext

SynchronizationContext yang secara sinkron memblokir metode Tunggu tidak mengizinkan masuknya kembali melalui pompa pesan.

NonConcurrentSynchronizationContext

Yang SynchronizationContext menjalankan pesan dalam urutan yang diterima.

ProgressWithCompletion<T>

Mekanisme pelaporan kemajuan bertahap yang juga memungkinkan asinkron menunggu semua laporan diproses.

ReentrantSemaphore

Semaphore JoinableTaskFactory-aware yang memungkinkan masuknya kembali tanpa mengonsumsi slot lain di semaphore.

SemaphoreFaultedException

Pengecualian dilemparkan ketika ReentrantSemaphore dalam keadaan rusak.

SingleThreadedSynchronizationContext

Konteks sinkronisasi utas tunggal, mirip dengan DispatcherSynchronizationContext dan WindowsFormsSynchronizationContext.

SingleThreadedSynchronizationContext.Frame

Bingkai pemompaan pesan yang dapat didorong untuk PushFrame(SingleThreadedSynchronizationContext+Frame) memompa pesan pada utas pemilik.

ThreadingTools

Metode utilitas untuk bekerja di seluruh utas.

TplExtensions

Ekstensi ke Pustaka Paralel Tugas.

Struct

Nama Deskripsi
AsyncCrossProcessMutex.LockReleaser

Nilai yang dikembalikan dari EnterAsync(TimeSpan) yang harus dibuang untuk merilis mutex.

AsyncLazy<T>.RevertRelevance

Struktur yang menyembunyikan relevansi blok kode dari tertentu AsyncLazy<T> dan JoinableTaskContext dibuat dengan.

AsyncReaderWriterLock.Awaitable

Dapat ditunggu yang dikembalikan dari permintaan kunci asinkron.

AsyncReaderWriterLock.LockHandle

Representasi "publik" dari kunci tertentu.

AsyncReaderWriterLock.Releaser

Nilai yang pembuangannya melepaskan kunci yang ditahan.

AsyncReaderWriterLock.Suppression

Nilai yang pembuangannya memulihkan visibilitas kunci apa pun yang dipegang oleh pemanggil.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaitable

Dapat ditunggu yang dikembalikan dari permintaan kunci asinkron.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaiter

Mengelola akses asinkron ke kunci.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceReleaser

Nilai yang pembuangannya melepaskan kunci yang ditahan.

AsyncSemaphore.Releaser

Nilai yang pembuangannya memicu pelepasan kunci.

AwaitExtensions.AggregateExceptionAwaitable

Hasil untuk ConfigureAwaitForAggregateException(Task, Boolean) menyiapkan yang Task akan ditunggu sambil melempar dengan semua pengecualian dalam.

AwaitExtensions.AggregateExceptionAwaiter

Hasil untuk GetAwaiter() menyiapkan yang Task akan ditunggu sambil melempar dengan semua pengecualian dalam.

AwaitExtensions.ConfiguredTaskYieldAwaitable

Yang dapat ditunggu yang akan selalu memimpin metode asinkron panggilan untuk menghasilkan, kemudian segera dilanjutkan, mungkin pada yang asli SynchronizationContext.

AwaitExtensions.ConfiguredTaskYieldAwaiter

Sebuah awaiter yang akan selalu memimpin metode asinkron panggilan untuk menghasilkan, kemudian segera dilanjutkan, mungkin pada aslinya SynchronizationContext.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable

Tugas yang dapat ditunggu yang memiliki afinitas untuk menjalankan panggilan balik secara sinkron pada tumpukan panggilan yang selesai.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable<T>

Tugas yang dapat ditunggu yang memiliki afinitas untuk menjalankan panggilan balik secara sinkron pada tumpukan panggilan yang selesai.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter

Penawa Tugas yang memiliki afinitas untuk menjalankan panggilan balik secara sinkron pada tumpukan panggilan yang selesai.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter<T>

Penawa Tugas yang memiliki afinitas untuk menjalankan panggilan balik secara sinkron pada tumpukan panggilan yang selesai.

AwaitExtensions.SynchronizationContextAwaiter

Sebuah awaiter kembali dari GetAwaiter(SynchronizationContext).

AwaitExtensions.TaskSchedulerAwaitable

Dapat ditunggu yang menjalankan kelanjutan pada penjadwal tugas yang ditentukan.

AwaitExtensions.TaskSchedulerAwaiter

Sebuah awaiter kembali dari GetAwaiter(TaskScheduler).

CancellationTokenExtensions.CombinedCancellationToken

Menyediakan akses ke yang CancellationToken menggabungkan beberapa token lain, dan memungkinkan pembuangan yang nyaman dari apa pun yang berlaku CancellationTokenSource.

JoinableTaskCollection.JoinRelease

Nilai yang pembuangannya membatalkan Join() operasi.

JoinableTaskContext.RevertRelevance

Struktur yang menghapus statis CallContext dan SynchronizationContext async/thread dan memulihkan nilai tersebut saat struktur ini dibuang.

JoinableTaskFactory.MainThreadAwaitable

Struktur yang dapat ditunggu yang memfasilitasi transisi asinkron ke utas Utama.

JoinableTaskFactory.MainThreadAwaiter

Struktur air yang memfasilitasi transisi asinkron ke utas Utama.

JoinableTaskFactory.ProcessingDisabledOperation

Struct yang pembuangannya akan mengembalikan efek panggilan sebelumnya ke DisableProcessing().

JoinableTaskInternals.JoinableTaskToken

Microsoft. Namespace VisualStudio.Threading berisi API untuk digunakan dalam proyek SDK Visual Studio. Anda harus menggunakan API ini untuk pemrograman asinkron dalam Visual Studio. Melakukannya membantu Anda menghindari kebuntuan

Pustaka ini didasarkan pada .NET Framework Task Parallel Library (TPL). Untuk informasi tentang pustaka ini, lihat Pustaka Paralel Tugas (TPL).

ReentrantSemaphore.RevertRelevance

Struktur yang menyembunyikan bukti apa pun yang telah dimasukkan ReentrantSemaphore pemanggil sampai nilai ini dibuang.

SpecializedSyncContext

Struktur yang menerapkan dan mengembalikan perubahan ke SynchronizationContext.

TplExtensions.NoThrowTaskAwaitable

Yang dapat ditunggu yang membungkus tugas dan tidak pernah melempar pengecualian ketika menunggu.

TplExtensions.NoThrowTaskAwaiter

Sebuah awaiter yang membungkus tugas dan tidak pernah melempar pengecualian ketika menunggu.

TplExtensions.NoThrowValueTaskAwaitable

Yang dapat ditunggu yang membungkus tugas dan tidak pernah melempar pengecualian ketika menunggu.

TplExtensions.NoThrowValueTaskAwaitable<TResult>

Yang dapat ditunggu yang membungkus ValueTask<TResult> dan tidak pernah melempar pengecualian ketika ditunggu.

TplExtensions.NoThrowValueTaskAwaiter

Sebuah awaiter yang membungkus tugas dan tidak pernah melempar pengecualian ketika menunggu.

TplExtensions.NoThrowValueTaskAwaiter<TResult>

Sebuah awaiter yang membungkus tugas dan tidak pernah melempar pengecualian ketika menunggu.

Antarmuka

Nama Deskripsi
IAsyncDisposable

Menentukan metode asinkron untuk merilis sumber daya yang dialokasikan.

IHangReportContributor

Menyediakan fasilitas untuk menghasilkan laporan yang mungkin berguna saat menganalisis hang.

Enum

Nama Deskripsi
AsyncReaderWriterLock.LockFlags

Bendera yang mengubah perilaku kunci default.

AsyncReaderWriterResourceLock<TMoniker,TResource>.LockFlags

Bendera yang mengubah perilaku kunci default.

JoinableTaskCreationOptions

Menentukan bendera yang mengontrol perilaku opsional untuk pembuatan dan eksekusi tugas.

ReentrantSemaphore.ReentrancyMode

Menjelaskan cara-cara ReentrantSemaphore mungkin berperilaku ketika permintaan semaphore dibuat dalam konteks yang sudah ada di semaphore.

RegistryChangeNotificationFilters

Berbagai jenis data dalam kunci registri yang menghasilkan pemberitahuan saat diubah.

Delegasikan

Nama Deskripsi
AsyncEventHandler

Penanganan aktivitas asinkron.

AsyncEventHandler<TEventArgs>

Penanganan aktivitas asinkron.