Top 10 multithreading-interviewspørgsmål og svar (Opdateret til 2019)

Indholdsfortegnelse:

Anonim

Introduktion til multithreading interviewspørgsmål og svar

Multitrådning er grundlæggende defineret som en CPU (central behandlingsenheds) evne til at behandle flere tråde samtidigt. Det spiller en vigtig rolle i Computer Architecture. Der er hovedsageligt tre typer multithreading-modeller til stede.

  1. Mange til mange modeller: I tilfælde af mange til mange modelrelationer multipliceres det et andet antal eller sæt tråde på et lige så stort sæt kernetråde.
  2. Mange til én model: I dette tilfælde relaterer den forskellige typer brugere til at niveauer tråde på en kerne niveau tråd. Med implementeringen af ​​denne proces er en eneste tråd kvalificeret til at få adgang til tråden ad gangen, og flere typer tråde vil således ikke være i stand til at udføre parallelt på det samme tidspunkt.
  3. Én til én model: I tilfælde af en til én model er der en direkte forbindelse mellem en brugerniveau-tråd og kerneniveautråden. Det giver faktisk mere samtidig implementering end mange til én model. Det giver også support parallel udførelse af multitråde.

Nu, hvis du er på udkig efter et job, der er relateret til multithreading, skal du forberede dig til spørgsmålene til intervaller om multithreading i 2019. Det er sandt, at hvert interview er forskelligt i henhold til de forskellige jobprofiler, men alligevel for at rydde interviewet skal du have en god og klar viden om multithreading-processer. Her har vi forberedt de vigtige multithreading interviewspørgsmål og svar, som vil hjælpe dig med at få succes i dit interview.

Nedenfor er de 10 vigtige 2019 multithreading interviewspørgsmål og svar, der ofte stilles i et interview. Disse spørgsmål er opdelt i to dele er som følger:

Del 1 –Multithreading Interview Questions (Basic)

Denne første del dækker grundlæggende multithreading-interviewspørgsmål og svar

1. Forklar forskellene mellem multitrådning og multiprocessering?

Svar:
I tilfælde af multitrådning bruger applikationsprocesserne og trådene til at dele de enkelte eller flere kerneressourcer, der inkluderer CPU-cacher, oversættelses lookaside-buffer og computerenhederne. Men i tilfælde af multiprocessering implementerer applikationen flere komplette behandlingsenheder i en eller flere kerner. Dette er den grundlæggende forskel mellem multitrådning og multiprocessering, da hovedmålet med multitrådning er at implementere mere enkelt kerneudnyttelse ved hjælp af trådniveau og instruktionsniveau parallelitet.

2. Forklar forskellige typer multithreading?

Svar:
Dette er de almindelige multithreading-interviewspørgsmål, som ofte stilles i et interview. Der er hovedsageligt tre typer multetrådprocesser.

  1. Interleaved multithreading: Denne type multithreading behandles hovedsageligt for at gøre udførelsesrørledningen uafhængig af enhver afhængighed ved at fjerne alle dataafhængighedsboder fra det samme.
  2. Grovkornet multithreading: Dette er en type multithreading, hvor en tråd kan fortsætte med at udføre, indtil den blokeres af en normal hændelse, der vil behandle en lang latenstidsbås.
  3. Samtidig multithreading: Dette er den nye og avancerede type multithreading-proces. I dette tilfælde implementeres multetrådprocessen hovedsageligt over for de superscalære processorer.

Lad os gå til de næste multithreading-interviewspørgsmål

3. Forklar forskellige typer trådtilstande?

Svar:
Find nedenfor de forskellige typer trådtilstande.

  1. Kan køres: I denne tilstand bruges en tråd til at forblive i kørsel af en eksekverbar tilstand
  2. Termineret: I denne tilstand skal tråden afsluttes og skal ikke forblive i den aktuelle eksekverbare fase.
  3. Venter: I denne tilstand bruges tråden til at vente på, at en anden tråd udfører den specificerede aktivitet
  4. Tidsbestemt ventetid: I denne tilstand er tråden afhængig af tidskrævende og skal vente på, at en anden tråd implementerer den specificerede handling.
  5. Blokeret: I denne tilstand bruges tråden til at forblive i den blokerede tilstand med hensyn til dens nuværende eksekveringsfase og venter på en monitorlås baseret på dens aktuelle tildelte opgaver.

4. Forklar ventetiden () og søvnmetoden ()?

Svar:
Ventetiden () -metoden er beskrevet i objektklassen og implementeres for at frigive låsesystemet under kodedækningsformålet. Sleep () -metoden er beskrevet i trådklassen og bruges til at pause den aktuelle trådkørsel i et givet specificeret tidspunkt.

5. Forklar forskellige metoder til tråde?

Svar:
Nedenfor er de få vigtige metoder til tråde:

  1. Start (): Denne metode bruges til at starte trådudførelsesprocessen. Dette er den grundlæggende metode, der skal bruges til at starte enhver multithreading-processer.
  2. getName (): Det bruges til at få navnet på en tråd
  3. sætpunkt (Int ny prioritet): Denne metode bruges til at ændre trådens prioriteter
  4. udbytte (): Denne metode bruges til at pause udførelsen af ​​den aktuelle tråd, mens den anden tråd fortsætter med den normale eksekveringsfase.

Del 2 - Multithreading-interviewspørgsmål (avanceret)

Lad os nu se på de avancerede multithreading-interviewspørgsmål og -svar.

6. Forklar tråden synkroniseringsproces?

Svar:
I tilfælde af multetrådning er der en tilstedeværelse af asynkron adfærd i programmer, der kan afbalanceres og manipuleres på en ordentlig måde gennem synkroniseringsprocessen. Ofte er det fundet, når flere tråde udfører både læse- og skriveaktiviteter på samme tidspunkt, og da er der en chance for at skabe forvirring. Så for at forhindre denne inkonsekvens er trådsynkroniseringsprocessen implementeret. I denne proces, når tråden kommer ind i den synkroniserede blok, bliver den uigenkaldelig for andre, og ingen anden tråd kan kalde denne metode.

7. Forklar forskellene mellem Brugerniveau og Kernelniveautråd?

Svar:
Find nedenfor forskellene mellem brugerniveau- og kerneniveautråde

  1. Tråd på brugerniveau er hurtigere end kerne-niveau-tråde fra oprettelses- og administrationsperspektiv
  2. Tråd for brugerniveau er generiske, mens kerneniveautrådene er mere specifikke for det pågældende operativsystem.
  3. I tilfælde af brugerniveau kan multithreading-processen ikke implementeres på multiprocessering, mens kerneniveauet selv kan multetrådede.

Lad os gå til de næste multithreading-interviewspørgsmål.

8. Hvad mener du med letvægtsprocessen?

Svar:
Dette er de avancerede multithreading-interviewspørgsmål, der stilles i et interview. Tråden er også kendt som en letvægtsproces. Det er dybest set en informationsstrøm og dens udførelse på tværs af proceskoden med hensyn til sine egne integrerede programmer. Det forbedrer ydeevnen ved hjælp af parallelisme.

9. Hvad mener du med Livelock?

Svar:
Når alle tråde er i blokeret tilstand og udførelse stoppes på grund af ressource utilgængelighed, betegnes denne situation som husdyr.

10. Forklar fordele og ulemper ved multetrådning?

Svar:
Find nedenfor fordele og ulemper ved multetrådning

Fordele:

  1. Det kan let udvides til multiprocessorer.
  2. Det giver overhængende handlingsstøtte, der passerer eller mislykkes i overensstemmelse hermed
  3. Vent / sleep-metode kan implementeres lettere og rent

Ulemper:

  1. Omhyggelig synkronisering er påkrævet
  2. Nogle gange oprette pladsrelaterede problemer i tilfælde af blokerede tråde.

Anbefalet artikel

Dette har været en guide til Liste over multithreading-interviewspørgsmål og-svar, så kandidaten let kan slå sammen disse multithreading-interviewspørgsmål. Her i dette indlæg har vi studeret de øverste multithreading-interviewspørgsmål, som ofte stilles i interviews. Du kan også se på de følgende artikler for at lære mere -

  1. JS Interview Spørgsmål
  2. Java Multi-threading Interviewspørgsmål
  3. VB.NET Interview Spørgsmål
  4. Forespørgsler om forårsrammer
  5. Spring vs Dvaletilstand: Funktioner
  6. Spring vs Struts: Funktioner
  7. Bedste guide til dvaletidsspørgsmål