Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 6386|Vastaus: 3

[Lähde] Käytetään .NET Core -korkean suorituskyvyn jonokanavia

[Kopioi linkki]
Julkaistu 2023-5-8 22:11:01 | | | |
System.Threading.Channels onUusia kokoelmatyyppejä, jotka esiteltiin .NET Core 3.0:n jälkeenSitä voidaan käyttää viestien jonottamiseen, datan tuottamiseen ja kuluttamiseen, ja julkiset Writer- ja Reader-API:t vastaavat viestien tuottajia ja kuluttajia, mikä tekee Channelista tiiviimmän ja helpommin käytettävän.

.NET/C# perustuu BlockingCollectionin taustatehtäväjonoon
https://www.itsvse.com/thread-9528-1-1.html


System.Threading.Channels-kirjasto:Hyperlinkin kirjautuminen on näkyvissä.
<T> Kanavaluokka:Hyperlinkin kirjautuminen on näkyvissä.

Kanavatyyppi

Microsoft tarjoaa kahta tyyppiä kanavia: toinen on rajoitettu kanava rajoitetulla kapasiteetilla ja toinen rajoittamaton kanava.

Luo kanava, jonka kapasiteetti on rajallinen:Channel.CreateBounded<string>(100);
Luo kanava, jonka kapasiteetti on rajaton:Channel.CreateUnbounded<string>();

Luo rajattomasti kanavia

Kanavaa luodessa voit asettaa ChannelOptionsin SingleWriterin ja SingleReaderin määrittämään yhden tuottajan ja kuluttajan, kun kanava on asetettu epätosi, kun SingleWriter = true on asetettu, se rajoittaa vain yhden tuottajan kirjoittamaan dataa samanaikaisesti, SingleReader = true on sama.


Kokeile avata kolme tuottajasäiettä ja yksi kuluttajaketju seuraavalla koodilla:



Kuluttaja käyttää WaitToReadAsyncia odottaakseen datan lukemista. Kuluttajat yrittävät lukea tietoja vasta, kun se on saatavilla.


Yllä olevassa koodissa kuluttajat lukevat dataa yksi kerrallaan suorittaakseen toimintoja, miten se tehdäänKuluttajien kulutustiedot massamuodossaEntä prosessointi?

Luo uusi ChannelReaderExtensions-laajennus seuraavalla koodilla:


Säädä kuluttajakoodia seuraavasti:



(Loppu)




Edellinen:ASP.NET Core (18) Räätälöi yksinkertainen OutputCache-ulostulovälimuisti
Seuraava:[Varsinaista taistelua]. NET/C# offline-IP-osoite (koti) hakukirjasto
Julkaistu 2023-5-8 klo 22:50:27 |
Opettele oppimaan
Julkaistu 2023-5-12 klo 10:07:46 |
Opettele oppimaan
Julkaistu 2023-5-16 klo 17:21:37 |
Opettele oppimaan
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com