. .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
|