Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 6386|Jawab: 3

[Sumber] Saluran antrean berperforma tinggi .NET Core digunakan

[Salin tautan]
Dipaparkan pada 2023-5-8 22:11:01 | | | |
System.Threading.Channels adalahJenis koleksi baru diperkenalkan setelah .NET Core 3.0Ini dapat digunakan untuk mengantri pesan, menghasilkan dan menggunakan data, dan API Penulis dan Pembaca publik sesuai dengan produsen dan konsumen pesan, yang juga membuat Channel lebih ringkas dan mudah digunakan.

.NET/C# didasarkan pada antrean tugas latar belakang BlockingCollection
https://www.itsvse.com/thread-9528-1-1.html


Pustaka System.Threading.Channels:Login hyperlink terlihat.
Kelas saluran<T>:Login hyperlink terlihat.

Jenis saluran

Microsoft menawarkan dua jenis saluran, satu adalah saluran terikat dengan kapasitas terbatas dan satu lagi adalah saluran tidak terikat dengan kapasitas tak terbatas.

Membuat saluran dengan kapasitas terbatas:Channel.CreateBounded<string>(100);
Buat saluran dengan kapasitas tak terbatas:Channel.CreateUnbounded<string>();

Buat saluran tanpa batas

Saat membuat saluran, Anda dapat mengatur SingleWriter dan SingleReader dari ChannelOptions untuk menentukan satu produsen dan konsumen saat saluran diatur ke false, ketika SingleWriter = true diatur, itu akan membatasi hanya satu produsen untuk menulis data secara bersamaan, SingleReader = true adalah sama.


Coba buka tiga utas produsen dan satu utas konsumen dengan kode berikut:



Konsumen menggunakan WaitToReadAsync untuk menunggu data dibaca. Konsumen mencoba membaca data hanya setelah tersedia.


Dalam kode di atas, konsumen membaca data satu per satu untuk melakukan operasi, bagaimana cara membuatnyaData konsumsi konsumen massalBagaimana dengan sepotong pemrosesan?

Buat ekstensi ChannelReaderExtensions baru dengan kode berikut:


Sesuaikan kode konsumen sebagai berikut:



(Akhir)




Mantan:ASP.NET Inti (18) Menyesuaikan cache output OutputCache sederhana
Depan:[Pertempuran aktual]. Pustaka pencari alamat IP offline NET/C# (beranda)
Dipaparkan pada 2023-5-8 22:50:27 |
Belajar belajar
Dipaparkan pada 2023-5-12 10:07:46 |
Belajar belajar
Dipaparkan pada 2023-5-16 17:21:37 |
Belajar belajar
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com