Promovare
Universitatea CodeGym
Învăţare
Curs
Sarcini
Sondaje și chestionare
Jocuri
Ajutor
Programa
Comunitate
Utilizatori
forum
conversație
Articole
Povesti de succes
Activitate
Recenzii
Abonamente
Tema ușoară
Lecții
Recenzii
Despre noi
start
Începe să înveți
Începeți să învățați acum
Harta misiunii
Lecții
Toate misiunile
Toate nivelurile
Crearea și lansarea de noi fire
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Ellie ți-a spus despre fire și o să-ți spun cum lucrezi cu ele. Pentru a crea un nou thread, trebuie să:" 1) Creați un obiect Thread 2) Transmite-i metoda pe care vrei să o rulezi 3) Apelați metoda de pornire pe obiectul Threa
Somn sănătos
Modulul 2: Java Core
Nivel,
Lecţie
„Bună ziua, Amigo! Astăzi Bilaabo vă va spune despre cea mai interesantă metodă pe care o folosim atunci când lucrăm cu fire: sleep . Metoda sleep este declarată ca metodă statică a clasei Thread , adică nu este atașată la niciun obiect. Sc
Oprire fire: versiunea neoficială
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Iată o întrebare interesantă pe care fie ai avut-o deja, fie o vei avea în curând. Cum poți opri un fir de discuție? " Să presupunem că utilizatorul spune programului să „descarce un fișier de pe Internet”. Firul principal cre
Oprire fire: versiunea oficială
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Trebuie să recunoști că ideea Cancel a lui Ellie a fost genială." "Da." "De fapt, ceva similar există în clasa Thread . Numai variabila nu se numește isCancel . Se numește isInterrupt . Și metoda folosită pentru a opri firul n
Lecții suplimentare pentru nivel
Modulul 2: Java Core
Nivel,
Lecţie
Multithreading: metode din clasa Thread În această lecție , vom continua să vorbim despre multithreading. Vom explora clasa Thread și modul în care funcționează câteva dintre metodele acesteia. Anterior, când studiam metodele de clasă, de o
Probleme de multithreading: accesarea unei resurse partajate
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Ieri am discutat despre beneficiile și avantajele multithreadingului. Acum este timpul să ne uităm la dezavantaje. Și, din păcate, nu sunt mici." Anterior, am privit un program ca pe un set de obiecte care își numesc metodele
Firele nu sunt independente! Sincronizat!
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Avem un panaceu - un leac pentru toate bolile. După cum am văzut deja, schimbarea necontrolată a firelor este o problemă." „De ce firele în sine nu pot decide când să treacă la următorul fir? Face tot ce trebuie să facă și apo
Cache-ul local: o problemă de multithreading. Volatil
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Îți amintești că Ellie ți-a spus despre problemele care apar atunci când mai multe fire încearcă să acceseze simultan o resursă partajată, da?" "Da." "Chestia este că asta nu e tot. Mai este o mică problemă." După cum știți, u
ceda (renunțarea dreptului de trecere)
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Astăzi vom avea o lecție scurtă, dar interesantă. O să vă povestesc despre yield , o metodă statică a clasei Thread." Ellie v-a spus deja că procesorul comută constant între fire. Fiecărui fir de execuție i se alocă o mică par
join — așteptând încheierea unui thread
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo! Văd că faci pași mari în a învăța despre fire." — La urma urmei, nu a fost atât de greu. Grozav! Astăzi aveți o lecție ușoară, iar subiectul este metoda join . Imaginează-ți următoarea situație: firul principal a creat un fir
DeadLock și cauzele sale
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo!" „Astăzi am să vă spun ce este blocajul”. — Hei, mi-ai spus deja despre așa ceva. "Da, am făcut-o. Dar astăzi vom analiza subiectul mai detaliat." „În cel mai simplu caz, blocarea implică două fire și două obiecte mutex. O blo
Strategii pentru a evita deadLock
Modulul 2: Java Core
Nivel,
Lecţie
"Bună, Amigo!" „Vreau să vă spun despre câteva strategii pentru evitarea blocajelor”. „Cea mai bună strategie este o arhitectură atentă și un set de reguli care guvernează când și în ce ordine puteți utiliza încuietori (achiziționați mutexu
Afișați mai multe
1
...
17
18
19
20
21
...
35
Please enable JavaScript to continue using this application.