Le 10 domande e risposte per l'intervista di threading (Aggiornato per il 2019)

Sommario:

Anonim

Introduzione al thread Intervista Domande e risposte

THREAD è noto come un processo leggero. Un thread può anche essere compreso in modo che sia un percorso che viene eseguito all'interno di un processo. Il concetto alla base del multi-threading è quello di raggiungere il parallelismo che aiuta ad essere orientati al multi-processo. Una definizione di linea molto fine che separa il threading e il multi-threading sta nel modo di gestire il processo associato. Lo scenario di seguito ci aiuterà a pensare in modo simile.

Immagina mentre lavori su un determinato browser che devi raccogliere i dati relativi al settore IT indiano, nel processo di raccolta dei dettagli che hai provato ad aprire una nuova finestra (nello stesso browser) ma sfortunatamente non puoi. Questo è un modo per spiegare cos'è esattamente il threading e come il multi-threading può essere una benedizione per l'utente. Quindi, in un browser, più schede possono essere thread diversi. Un altro esempio chiarirà il pensiero in modo più preciso, l'applicazione MS Word utilizza più thread durante il lavoro, un thread a scopo di formattazione mentre un altro per l'elaborazione degli input e così via.

Ora, se stai cercando un lavoro correlato al threading, devi prepararti per le domande dell'intervista di threading 2019. È vero che ogni colloquio è diverso secondo i diversi profili professionali. Qui, abbiamo preparato le importanti domande e risposte sull'intervista di threading che ti aiuteranno ad avere successo nel tuo colloquio.

In questo articolo sulle domande di intervista di discussione del 2019, presenteremo le 10 domande di intervista di discussione più importanti e utilizzate di frequente. Queste domande sono divise in due parti:

Parte 1 - Domande di intervista di threading (di base)

Questa prima parte tratta le domande e le risposte di base per l'intervista di discussione

Q1. Qual è la differenza tra la programmazione multi-thread e la programmazione single thread?

Risposta:
In un processo multi-threading, più thread funzionano contemporaneamente. Non esiste un ciclo di eventi durante il pooling in un modello multi-threading. Il tempo della CPU viene utilizzato in modo migliore senza perdita di tempo. Il tempo di inattività è minimo. Un programma più efficiente è il risultato di un processo multi-threading. Un comportamento speciale della programmazione multi-threading è che quando un thread viene messo in pausa l'altro viene eseguito normalmente.

Un singolo thread viene eseguito contemporaneamente in una programmazione Single thread, questo modello utilizza un loop di eventi di processo durante il pool. Il tempo della CPU non viene capitalizzato in modo corretto poiché ha un tempo di inattività maggiore. L'efficacia della programmazione a thread singolo è inferiore perché quando un thread viene messo in pausa il sistema attende fino alla ripresa del thread, il che si traduce in programmi meno efficaci.

Q2. Che cos'è un processo e come è diverso da un thread?

Risposta:
Questa è la domanda di base per l'intervista di discussione posta in un'intervista. La differenza principale tra i due sta nel loro comportamento lavorativo. I thread di un processo correlato vengono eseguiti nella posizione di memoria condivisa mentre in un processo gli spazi di memoria sono diversi. Questo comportamento del thread lo rende più efficiente in termini di reattività con la sua controparte. Poiché i thread sono associati tra loro, condividono codice, dati e dettagli del sistema operativo tra loro. Un'altra cosa riguardo al thread è che hanno il proprio contatore Program (PC), set di registri e spazio di stack.

Q3. Elaborare il ciclo di vita di un thread?

Risposta:


Ogni volta che viene creato un thread, questo è nello stato "New Born". Dopo questo, il thread può in 2 stati vale a dire

  • In esecuzione
  • Runnable

Il thread chiamerà il metodo start per navigare o spostarsi nello stato run o runnable dallo stato neonato. Runnable significa che il thread è pronto per essere eseguito ma è in attesa della disponibilità del processore. Nel momento in cui viene assegnato un processore, lo stato viene modificato in esecuzione da eseguibile. Ma, per cambiare lo stato da esecuzione a eseguibile, ci sono metodi dedicati per farlo (come in JAVA c'è il metodo YIELD). Ora per bloccare una forma di thread in uno dei due stati (cioè in esecuzione o eseguibile) ci sono 3 metodi vale a dire

  • Sospendere
  • Dormire
  • Aspettare

Anche per eseguire un thread già bloccato ci sono diversi metodi come

  • Curriculum vitae
  • Notificare

Infine, è necessario il metodo STOP per far cambiare lo stato del thread da neonato, in esecuzione, eseguibile o bloccato allo stato DEAD.

Nota: ci possono essere più domande di intervista di una sola parola basate su questo - come il nome del metodo per cambiare lo stato da esecuzione a blocco o chiunque menzionato sopra.

Q4. Che cos'è una classe ThreadLocal?

Risposta:
La classe ThreadLocal in Java consente di creare variabili. Queste variabili possono essere lette e scritte con gli stessi metodi. Quindi, se due thread eseguono lo stesso codice ma i codici hanno una variabile ThreadLocal, è probabile che i due thread non possano vedersi a vicenda variabili ThreadLocal.

Passiamo alle prossime domande per l'intervista di discussione.

Q5. Cos'è un thread daemon in Java?

Risposta:
I thread utente sono i front performer e i thread demoni sono come assistenti. L'assistente aiuta a completare un'attività. Una volta completata l'attività, non è necessario per l'esecutore e in cambio l'assistente lascia anche il posto. Questi sono principalmente creati da JVM. Questi thread (demoni) sono principalmente creati per eseguire l'attività in background come garbage collection ecc.

Parte 2 - Domande di intervista di discussione (Avanzate)

Diamo ora un'occhiata alle Domande avanzate sull'intervista di threading.

Q6. Come creare thread in Java?

Risposta:
Estendendo la classe Thread è possibile creare un thread.

La classe pubblica MyThreadClass estende il thread (

Public void run () (

System.out.println ("Il nome della discussione è:" + Thread.currentThread (). GetName ());

Provare(

Thread.sleep (1000);

) catch (InterruptedException) (

e.printStackTrace ();

)

)

)

Q7. Fornire i nomi di tutte le sezioni o dettagli che un thread contiene in un TCB (blocco di controllo thread)?

Risposta:
Identificatore discussione

  • Stack Pointer
  • Contatore di programma
  • Stato discussione
  • Set registro filettature
  • Puntatore al processo genitore

Passiamo alle prossime domande per l'intervista di discussione.

Q8. Che cos'è Thread Join () nella discussione?

Risposta:
La classe di un thread contiene diversi metodi, join () e sleep () sono 2 tra questi. Il metodo thread.join () viene utilizzato per chiamare un thread e lo blocca fino a quando un thread non viene terminato.

Q9. Come eseguire il debug di un thread in C #?

Risposta:
Questa è la maggior parte delle domande di intervista di discussione in un'intervista. In Visual Studio è disponibile un collegamento per una migliore produttività con limiti di tempo.

  • CTRL + T + T o fiocchi di neve = Questo limita l'esecuzione solo al thread corrente e blocca tutti gli altri thread.
  • CTRL + T + J o pulsante Successivo = consente di passare al thread singolo successivo. Questo porta modifiche solo al thread corrente e blocca tutti gli altri thread.

Q10. Cosa fa l'indirizzo dell'operatore in background?

Risposta:
L'operatore AddressOf crea l'oggetto nel metodo di processo in background. Un puntatore a funzione orientato al tipo e orientato agli oggetti è la struttura di tutti i delegati in VB.NET. Una volta avviato il thread, è possibile eseguire il codice chiamando il metodo Start () per il thread.

Articolo raccomandato

Questa è stata una guida all'elenco delle domande e risposte dell'intervista di discussione in modo che il candidato possa facilmente reprimere queste domande di intervista di discussione. Qui in questo post, abbiamo studiato le principali domande di intervista di discussione che vengono spesso poste nelle interviste. Puoi anche consultare i seguenti articoli per saperne di più -

  1. Le 10 principali domande di intervista sull'hacking etico
  2. Domande di intervista sulla struttura dei dati
  3. Domande di intervista a microprocessore
  4. JMeter Intervista Domande e risposte