Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 6386|Svar: 3

[Källa] .NET Core högpresterande kökanaler används

[Kopiera länk]
Publicerad den 2023-5-8 22:11:01 | | | |
System.Threading.Channels ärNya samlingstyper introducerades efter .NET Core 3.0Den kan användas för att köa meddelanden, producera och konsumera data, och de publika Writer- och Reader-API:erna motsvarar producenter och konsumenter av meddelanden, vilket också gör Channel mer koncist och lätt att använda.

.NET/C# baseras på BlockingCollection-bakgrundsuppgiftskön
https://www.itsvse.com/thread-9528-1-1.html


System.Threading.Channels-biblioteket:Inloggningen med hyperlänken är synlig.
<T> Kanalklass:Inloggningen med hyperlänken är synlig.

Kanaltyp

Microsoft erbjuder två typer av kanaler, en är en bunden kanal med begränsad kapacitet och en är en obunden kanal med obegränsad kapacitet.

Skapa en kanal med begränsad kapacitet:Channel.CreateBounded<string>(100);
Skapa en kanal med obegränsad kapacitet:Channel.CreateUnbounded<string>();

Skapa obegränsade kanaler

När du skapar en kanal kan du ställa in SingleWriter och SingleReader i ChannelOptions för att ange en enskild producent och konsument när kanalen är satt till falsk, när SingleWriter = true är satt, begränsas endast en producent att skriva data samtidigt, SingleReader = true är samma.


Försök öppna tre producenttrådar och en konsumenttråd med följande kod:



Konsumenten använder WaitToReadAsync för att vänta på att datan ska läsas. Konsumenter försöker läsa datan först efter att den är tillgänglig.


I ovanstående kod läser konsumenterna data en efter en för att utföra operationer, hur man gör detBulkkonsumtionsdata för konsumenterVad sägs om en process?

Skapa en ny ChannelReaderExtensions-extension med följande kod:


Justera konsumentkoden enligt följande:



(Slut)




Föregående:ASP.NET Core (18) Anpassa en enkel OutputCache-utdatacache
Nästa:[Verklig strid]. NET/C# offline-IP-adress (hem) lokaliseringsbibliotek
Publicerad den 2023-5-8 22:50:27 |
Lär dig att lära dig
Publicerad den 2023-5-12 10:07:46 |
Lär dig att lära dig
Publicerad den 2023-5-16 17:21:37 |
Lär dig att lära dig
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com