. .NET framework yra vykdymo klasės biblioteka, skirta C#, . .NET yra kelių gijų aplinka. Gija yra vienas nuoseklus proceso valdymo procesas. Gija yra proceso objektas. Procesas gali turėti kelias gijas, o gija turi turėti pirminį procesą.
Gijos paprastai turi tris pagrindines būsenas: skaitymą, blokavimą ir veikimą. Iš trijų pagrindinių būsenų išvestos penkios pagrindinės gijų operacijos. Pirma, išvesti, gijos yra išvestos proceso metu. Antra, suplanuokite, pasirinkite paruoštą giją, kad įeitumėte į operacijos būseną. Trečia, blokuoti, jei gija turi laukti, kol įvykis įvyks vykdymo metu, ji bus užblokuota. Ketvirta, atblokuokite, jei įvykis prasideda, gija atblokuojama, patenkant į paruoštą eilę. Penkta, baigti, gija baigiasi, ir registro kontekstas ir rietuvės turinys yra išleistas.
Nauja gija yra naujai sugeneruotas gijos objektas, kuriam dar nepaskirstyti ištekliai. Todėl galite naudoti tik start() arba close() metodus.
Vykdoma būsena yra tada, kai gija gauna gijai reikalingus išteklius po to, kai paleidžiamas start() metodas ir iškviečia run() metodą.
Būsena Not Runable yra būsena, kuri įeina, kai įvyksta šie įvykiai, iškviečiamas suspend() metodas, iškviečiamas sleep() metodas, gija naudoja wait() būklės kintamajam laukti, o gija laukia I/O.
Negyvas yra tada, kai grįžta Run() metodas arba kita gija iškviečia stop() metodą, ir gija pereina į negyvą būseną. Žemiau pateikiami du paprasti "Thread" pavyzdžiai.
Santrauka: Kodėl verta naudoti "Thread" (kelių gijų), taip yra tam, kad neužblokuotumėte pagrindinės gijos, jei reikia apdoroti didelį duomenų kiekį arba iškviesti daug laiko reikalaujantį metodą, turime naudoti "Thread" kelių gijų.
Pavyzdys:
Nenaudojamas kelių gijų valdymas: sąsaja neatsako... Taip yra todėl, kad kelių gijų naudojimas nenaudojamas
|