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

Utsikt: 57872|Svar: 7

[Källa] c# kapslar in en universell QueueHelper-kö

[Kopiera länk]
Publicerad på 2018-08-29 10:39:11 | | | |
I daglig utveckling kan vi använda köer, som är en lagringsstruktur som kan uppnå "först in, först ut".

Tillämpningsscenarier: skriva loggar, skicka mejl, etc

Om vi behöver registrera gränssnittsloggen för varje användare som begär vår data, behöver vi inte skriva en logg varje gång användaren begär den, vi kan lägga logginnehållet i kön och låta andra trådar köra det, så att applikationens effektivitet inte påverkas.

En annan fördel är att om man lägger till data i kön vid samtidighet, med en enda tråd för att köra köns data, kan man undvika många undantag, om samtidighet (multitrådat), åtkomst till samma fysiska fil orsakar undantag. (förbehållet tillgänglighet)

Kön universell metod:

Detta är en abstrakt klass, och du behöver ärva denna abstraktionsklass och implementera metoden Execute abstraction. Eftersom jag inte vet vilken typ av data du vill bearbeta används generiska data här, det vill säga, Entitet är av strängtyp, metodparametrar är strängtyp, och datan du bearbetar är strängtyp.

ConcurrentQueue trådsäker kö säkerställer att det inte finns några undantag i en flertrådad miljö.

ManualResetEvent för att styra trådens signal,Tidigare kollade vi kön efter data var några sekunder eller minutNu lägger vi till datan i kön och behöver bara skicka en signal!

Användning:

(Slut)




Föregående:Sätt upp Projektets installationspaketproduktionsprocess Jag vill kopiera primär utmatningsfil – frågan
Nästa:Utgåvan av redis-kinesiska kan inte visas korrekt
 Hyresvärd| Publicerad på 2019-05-24 10:13:59 |
Rekommendera ett ramverk:

asp.net bakgrundsuppgift Hangfire-ramverkets handledning
https://www.itsvse.com/thread-7611-1-1.html
(Källa: Architect_Programmer)
Publicerad på 2019-09-10 10:26:26 |
Varför körs inte Execute-metoden i Test-klassen när jag kör den?
 Hyresvärd| Publicerad på 2019-09-10 21:52:44 |
hano7758 Publicerad den 2019-9-10 10:26
Varför körs inte Execute-metoden i Test-klassen när jag kör den?

Kan du posta din kod?
 Hyresvärd| Publicerad på 2021-01-23 11:53:46 |
.NET/C# baseras på BlockingCollection-bakgrundsuppgiftskön
https://www.itsvse.com/thread-9528-1-1.html

Publicerad på 2021-07-26 14:09:53 |
Hur kan du se koden
Publicerad på 2022-09-26 22:20:08 |
Jag måste lära mig att använda den
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