Introducere în interviul cu întrebări și răspunsuri
THREAD este cunoscut sub numele de proces ușor. Un thread poate fi înțeles, de asemenea, într-un mod că este o cale care se execută în cadrul unui proces. Conceptul din spatele Multi-threading este acela de a realiza paralelismul care ajută la orientarea în mai multe procese. O definiție de linie foarte fină care separă filetarea și multi-filetarea este în modul de gestionare a procesului asociat. Scenariul menționat mai jos ne va ajuta să gândim într-un mod similar.
Imaginați-vă că în timp ce lucrați la orice browser dat, aveți nevoie pentru a colecta datele referitoare la industria IT din India, în procesul de colectare a detaliilor pe care ați încercat să deschideți o fereastră nouă (în același browser), dar, din păcate, nu. Acesta este un mod de a explica exact ce este filetarea și cât de multe filetări pot fi o binecuvântare pentru utilizator. Deci, într-un browser, mai multe file pot fi subiecte diferite. Un alt exemplu va clarifica mai exact gândirea, aplicația MS Word folosește mai multe fire în timp ce lucrează, un fir pentru formatare, în timp ce altul pentru procesarea intrărilor și așa mai departe.
Acum, dacă sunteți în căutarea unui loc de muncă care are legătură cu filetarea, atunci trebuie să vă pregătiți pentru interviurile pentru interviul din 2019. Este adevărat că fiecare interviu este diferit în funcție de diferitele profiluri de muncă. Aici, am pregătit importante întrebări și răspunsuri la interviul de filetare, care vă vor ajuta să obțineți succes în interviu.
În acest articol despre interviurile pentru interviuri din 2019, vom prezenta 10 cele mai importante și frecvent utilizate întrebări pentru interviul. Aceste întrebări sunt împărțite în două părți:
Partea 1 - Întrebări despre interviul filetat (de bază)
Această primă parte acoperă întrebările de bază și răspunsurile la interviul de filetare
Q1. Care este diferența dintre programarea cu mai multe fire și programarea cu un singur fir?
Răspuns:
Într-un proces cu mai multe filetări, mai multe fire funcționează în același timp. Nu există nicio buclă de eveniment în timp ce se colectează într-un model cu mai multe filetări. Timpul procesorului este utilizat într-un mod mai bun, fără pierderi de timp. Timpul inactiv este cel mai mic. Un program mai eficient este rezultatul unui proces cu mai multe filetări. Un comportament special al programării cu mai multe filetări este acela că atunci când un thread este întrerupt, celălalt rulează, ca de obicei.
Un singur fir rulează simultan într-o programare single thread, acest model folosește o buclă de eveniment de proces în timpul colectării. Timpul procesorului nu este valorificat într-un mod corect, deoarece are mai mult timp inactiv. Eficiența programării cu un singur fir este mai mică deoarece atunci când un fir este întrerupt, sistemul așteaptă până la reluarea firului, ceea ce duce la programe mai puțin eficiente.
Q2. Ce este un proces și cum este diferit de un thread?
Răspuns:
Aceasta este întrebarea de bază a interviului cu filetarea pusă într-un interviu. Diferența principală dintre cei doi constă în comportamentul lor de lucru. Firele unui proces aferent se rulează în locația de memorie partajată, în timp ce într-un proces spațiile de memorie sunt diferite. Acest comportament de fir îl face mai eficient în termeni de reacție cu omologul său. Întrucât firele sunt asociate unele cu altele, acestea partajează detalii de cod, date și sistem de operare unul cu altul. Încă un lucru despre thread este că au propriul contor de programe (PC), seturi de înregistrări și spațiu de stivă.
Q3. Elaborați la ciclul de viață al unei fire?
Răspuns:
Ori de câte ori este creat un thread este în starea „New Born”. După aceasta, firul poate fi în 2 stări și anume
- Alergare
- runnable
Firul va apela la metoda de pornire pentru a naviga sau a trece la starea de rulare sau rulare din starea nou-născutului. Runnable înseamnă că thread-ul este gata de executare, dar așteaptă disponibilitatea procesorului. În momentul în care un procesor este alocat, starea devine modificată la rulare din rulare. Dar, pentru a schimba starea de la rulare la rulare, există metode dedicate pentru a face acest lucru (ca în JAVA există metoda YIELD). Acum pentru a bloca o formă de fir fie din cele două stări (adică rularea sau rularea) există 3 metode și anume
- Suspenda
- Dormi
- Aștepta
De asemenea, pentru a rula un fir deja blocat, există diferite metode, cum ar fi
- Relua
- notifica
În cele din urmă, este necesară metoda STOP pentru ca starea firului să se schimbe de la nou-născut, alergând, rulând sau blocat la starea DEAD.
Notă - Pe baza acestui interviu pot exista mai multe întrebări de interviu cu un cuvânt - cum ar fi numele metodei pentru a schimba starea de la rulare la bloc sau oricine menționat mai sus.
Q4. Ce este o clasă ThreadLocal?
Răspuns:
Clasa ThreadLocal din Java vă permite să creați variabile. Aceste variabile pot fi citite și scrise prin aceleași metode. Deci, dacă două fire execută același cod, dar codurile au o variabilă ThreadLocal, șansele sunt ca cele două fire să nu poată vedea reciproc variabilele ThreadLocal.
Haideți să trecem la următoarea întrebare pentru interviul de filetare.
Q5. Ce este un fir de demoni în Java?
Răspuns:
Firele utilizator sunt performantele din față și firele demon sunt ca asistenții. Asistentul ajută la finalizarea unei sarcini. Odată ce sarcina este finalizată, nu mai este nevoie de executant și, în schimb, asistentul renunță la locul respectiv. Acestea sunt create în cea mai mare parte de JVM. Aceste fire (demoni) sunt create în principal pentru a efectua sarcina de fundal precum colectarea gunoiului etc.
Partea 2 - Întrebări despre interviul filetat (avansat)
Haideți acum să aruncăm o privire la întrebările avansate de interviuri cu filetare.
Q6. Cum se creează fire în Java?
Răspuns:
Prin extinderea clasei Thread, se poate crea un thread.
Clasa publică MyThreadClass extinde Thread (
Funcționare publică de gol () (
System.out.println („Numele firelor este:” + Thread.currentThread (). GetName ());
Încerca(
Thread.sleep (1000);
) captură (InterruptException) (
e.printStackTrace ();
)
)
)
Q7. Furnizați numele tuturor secțiunilor sau detaliilor pe care le conține un thread într-un TCB (bloc de control a firelor)?
Răspuns:
Identificator fir
- Stack Pointer
- Contor de programe
- Starea firelor
- Set de registre de fire
- Indicatorul procesului parental
Haideți să trecem la următoarea întrebare pentru interviul de filetare.
Q8. Ce este Thread Join () în filetare?
Răspuns:
Clasa unui fir conține mai multe metode, unirea () și somnul () sunt 2 dintre ele. Metoda thread.join () este utilizată pentru a apela un thread și îl blochează până când un fir este încheiat.
Q9. Cum depanați un fir în C #?
Răspuns:
Aceasta este cea mai solicitată întrebare despre interviul cu filetarea într-un interviu. În studioul vizual, există o comandă rapidă pentru o productivitate mai bună, limitând timpul.
- CTRL + T + T sau fulgi de zăpadă = Aceasta limitează execuția doar la firul curent și îngheață toate celelalte fire.
- CTRL + T + J sau butonul Next = permite trecerea la următorul thread single. Aceasta aduce modificări numai la firul curent și îngheață toate celelalte fire.
Q10. Ce face Adresa operatorului în fundal?
Răspuns:
Operatorul AddressOf creează obiectul în metoda procesului de fundal. Un pointer de funcții orientat pe obiecte sigur de tip este structura oricărui delegați din VB.NET. După ce a fost inițiat firul, se poate executa codul apelând la metoda Start () pentru thread.
Articol recomandat
Acesta a fost un ghid pentru lista întrebărilor și răspunsurilor la interviul de a fila, astfel încât candidatul să poată împărți cu ușurință aceste întrebări de interviuri cu filetare. Aici, în acest post, am studiat cele mai bune întrebări despre interviuri care sunt adesea puse în interviuri. De asemenea, puteți consulta următoarele articole pentru a afla mai multe -
- Top 10 întrebări de interviu de hacking etic
- Întrebări privind interviul privind structura datelor
- Întrebări la interviu cu microprocesor
- Întrebări și răspunsuri la interviu JMeter