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

Udsigt: 24628|Svar: 1

[WinForm] C# task.waitall fryser grænsefladen

[Kopier link]
Opslået på 26/06/2017 22.01.09 | | |
Jeg skrev et program i dag og opdagede, at winform-grænsefladen sidder fast og ikke reagerer ikke,
Men ved at klikke på softwaren er der slet ingen refleksion, og den er gået i en tilstand af suspenderet animation.


Så, ved fejlfinding, blev der ikke kastet nogen undtagelser – hvad er problemet?

Fordi du skrev denne sætning i hovedtråden, får det hovedtråden til at vente på, at alle opgaver er udført, før den udfører følgende kode
Jeg stødte også på dette problem, hvor jeg åbnede en ny børnetråd i hovedtråden, men ventede på, at alle børnetrådene var færdige, før jeg kørte næste kode i hovedtråden, og brugte wait-metoden fryser interfacet
Da jeg så kommentarerne på internettet, gik det pludselig op for mig, at jeg skrev

Den er skrevet i hovedtråden, som har ventet på, at alle opgaver skulle slutte, hvilket resulterer i, at grænsefladen går i en tilstand af suspenderet animation

Løsningen er som følger:

Vikl en tråd udenfor Tråd, løs!




Tidligere:Verifikation af WebAPI Universelle Signaturer (2)
Næste:Alibaba Cloud SMS-tjeneste sender promoverings-SMS-beskeder i batches
Opslået på 01/12/2022 15.02.09 |
Jeg har nu det samme problem, undertråden sidder fast, når den blokerer med task.waitall efter opstart.
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