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

Udsigt: 18422|Svar: 1

[Kilde] C# lærer at bruge trådtråde

[Kopier link]
Opslået på 27/03/2017 17.32.28 | | |

. .NET-frameworket er et runtime-klassebibliotek for C#, . .NET er et multitrådet miljø. En tråd er en enkelt sekventiel kontrolproces i en proces. En tråd er en enhed i en proces. En proces kan have flere tråde, og en tråd skal have en forælderproces.

     Tråde har generelt tre grundlæggende tilstande: læsning, blokering og operation. Fra de tre grundlæggende tilstande udledes fem grundlæggende trådoperationer. For det første, udlede, tråde udledes inden for en proces. For det andet, planlæg en klar tråd for at indtaste operationstilstanden. For det tredje, blokering, hvis en tråd skal vente på, at en hændelse sker under eksekveringen, vil den blive blokeret. For det fjerde, ophæv blokeringen, hvis begivenheden starter, bliver tråden ophævet og går ind i ready-køen. For det femte frigives tråden, og registerkonteksten samt stakkens indhold, den udførte, frigives.

     En ny tråd er et nyligt genereret trådobjekt, der endnu ikke har tildelt ressourcer. Derfor kan du kun bruge start() eller luk()-metoderne.

     Den kørbare tilstand er, når tråden får de nødvendige ressourcer til tråden efter start()-metoden kører og kalder run()-metoden for at udføre.

     Not Runable-tilstanden er en tilstand, der træder ind, når følgende begivenheder opstår, suspend()-metoden kaldes, sleep()-metoden kaldes, tråden bruger wait() til at vente på betingelsesvariablen, og tråden venter på I/O.

    Død er, når Run()-metoden vender tilbage, eller en anden tråd kalder stop()-metoden, og tråden går ind i dødtilstanden. Nedenfor er to simple eksempler på Thread.


Resumé: Hvorfor bruge Thread (multi-threading), det er for at undgå at blokere hovedtråden; hvis du skal behandle en stor mængde data eller kalde en tidskrævende metode, skal vi bruge Thread multi-threading.

Eksempel:


Bruger ikke multithreading: Interfacet reagerer ikke... Det er fordi multitrådning ikke er i brug




Tidligere:Hvem er ejendomschefen Wu Xuezhan bag "mor-fornærmelsessagen"?
Næste:BundleTable indlæser ikke js- og css-filer med min
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