Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 6386|Válasz: 3

[Forrás] .NET Core nagy teljesítményű sorban lévő csatornákat használnak

[Linket másol]
Közzétéve: 2023-5-8 22:11:01 | | | |
System.Threading.Channels a következőkÚj gyűjteménytípusok a .NET Core 3.0 utánHasználható üzenetek sorba állítására, adatok előállítására és felhasználására, és a nyilvános Író és Olvasó API-k megfelelnek az üzenet gyártóinak és fogyasztóinak, ami egyben tömörebbé és könnyebbé teszi a csatornát is.

A .NET/C# a BlockingCollection háttérfeladatsorán alapul
https://www.itsvse.com/thread-9528-1-1.html


System.Threading.Channels könyvtár:A hiperlink bejelentkezés látható.
<T> Csatornaosztály:A hiperlink bejelentkezés látható.

Csatorna típusa

A Microsoft kétféle csatornát kínál: az egyik korlátozott kapacitású kötött csatorna, a másik pedig korlátlan kapacitású korlátlan csatorna.

Készíts egy korlátozott kapacitású csatornát:Channel.CreateBounded<string>(100);
Létrehozz egy csatornát korlátlan kapacitással:Channel.CreateUnbounded<string>();

Korlátlan csatornák létrehozása

Csatorna létrehozásakor beállíthatod a ChannelOptions SingleWriter és SingleReader funkcióit, hogy egyetlen producert és fogyasztót határozzanak meg, ha a csatorna hamisnak van állítva, ha a SingleWriter = true van beállítva, akkor csak egy producer írja az adatokat egyszerre, a SingleReader = true ugyanaz.


Próbálj meg három producer szálat és egy fogyasztói szálat nyitni a következő kóddal:



A fogyasztó a WaitToReadAsync segítségével várja az adatok olvasását. A fogyasztók csak akkor próbálják elolvasni az adatokat, amikor azok elérhetővé válnak.


A fenti kódban a fogyasztók egyenként olvassák az adatokat a műveletek végrehajtásához, hogyan kell végrehajtani azokatTömeges fogyasztói fogyasztási adatokMi a helyzet egy feldolgozással?

Hozz létre egy új ChannelReaderExtensions bővítményt a következő kóddal:


A fogyasztói kódot az alábbiak szerint állítsd be:



(Vége)




Előző:ASP.NET Core (18) Testreszabni egy egyszerű OutputCache kimeneti gyorsítótárt
Következő:[Valódi harc]. NET/C# offline IP-cím (otthon) helymeghatározó könyvtár
Közzétéve: 2023-5-8 22:50:27 |
Tanulj meg
Közzétéve: 2023-5-12 10:07:46 |
Tanulj meg
Közzétéve: 2023-5-16 17:21:37 |
Tanulj meg
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com