Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 3427|Svar: 2

[Kilde] En ny timer i .NET 6, PeriodicTimer, bruges

[Kopier link]
Opslået på 02/08/2023 19.12.40 | | |
Krav: Brug ASP.NET Core 6 til at oprette en ny baggrundstjeneste, som regelmæssigt kan polles for at indhente data og bruge denSystem.Timers.TimerTimer polling, tilføjelse af ekstra Monitor-kode for at forhindre gentagen eksekvering samtidig, selvom det opfylder mine forretningsbehov, er ikke elegant nok, og brugen af den nye PeriodicTimer-timer i .NET 6 kan bedre opfylde mine forretningsbehov.

Som udvikler har du måske brugt timere i .NET før. Der findes mange typer timere i .NET i dag, som hver tjener et forskelligt formål. Som følger:

  • System.Threading.Timer
  • System.Timers.Timer
  • System.Windows.Forms.Timer
  • System.Web.UI.Timer
  • System.Windows.Threading.DispatcherTimer


En ny Timer blev introduceret i .NET 6 - System.Threading.PeriodicTimer, og den største forskel sammenlignet med de tidligere Timers er, at hændelseshåndteringen af den nye PeriodicTimer kan bruges på en mere bekvem asynkron måde, hvilket eliminerer mekanismen med at bruge callbacks og reducerer kompleksiteten ved brug.

.NET 6 introducerede en ny timertype kaldet PeriodicTimer. Hovedformålet med PeriodicTimer er at undgå brug af callbacks.At undgå callbacks sparer os for at håndtere hukommelseslækager, der kan opstå i langvarige operationer, og vi kan skrive asynkron kode i stedet for synkronisere over asynkron for at bruge den metode i callbacks. Du kan have med den nuværende timertype at gøre,Et andet problem er de overlappende callbacks。 Hvis du ikke skriver kode til callback-overlap-scenarier, kan du opleve uventet adfærd i din applikation.

skabePeriodicTimerInstansen er meget simpel, den eneste parameter du skal oplyse er periodens værdi, koden er som følger:

Asynkron timing baggrundsopgavekode:

(Slut)





Tidligere:Base64-dekodningsfejl findes i alle versioner af .NET
Næste:.NET/C# generisk T kovariant udgang og inverter i grænsefladen
 Udlejer| Opslået på 02/08/2023 20.22.23 |
 Udlejer| Opslået på 12/11/2023 09.42.28 |
Tjenesten stopper, og CancellationToken underretter annulleringen af opgaven, hvilket resulterer i, at man kaster:OperationCancellededExceptionabnorm
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com