Maison  >  Article  >  Java  >  Questions d'entretien sur les nouvelles Java 2020 - Multi-threading (3)

Questions d'entretien sur les nouvelles Java 2020 - Multi-threading (3)

王林
王林avant
2020-05-14 17:56:302041parcourir

Questions d'entretien sur les nouvelles Java 2020 - Multi-threading (3)

1. Quels sont les statuts du pool de threads ?

Le pool de threads a 5 états : En cours d'exécution, Arrêt, Arrêt, Rangement, Terminé.

Schéma du cadre de commutation de l'état du pool de threads :

Questions dentretien sur les nouvelles Java 2020 - Multi-threading (3)

(Recommandation du didacticiel vidéo : vidéo Java)

2. Quelle est la différence entre les méthodes submit() etexecute() dans le pool de threads ?

Les paramètres reçus sont différents

submit a une valeur de retour, mais exécuter ne le fait pas

submit facilite la gestion des exceptions

3 . Comment assurer la sécurité des opérations multithread dans les programmes Java ?

La sécurité des threads se reflète dans trois aspects :

Atomicité : offrant un accès mutuellement exclusif, un seul thread peut opérer sur les données en même temps (atomique, synchronisé) ; >

Visibilité : les modifications apportées à la mémoire principale par un thread peuvent être vues par les autres threads dans le temps (synchronisées, volatiles) ;

Ordre : un thread observe l'ordre d'exécution des instructions dans les autres threads, en raison de l'instruction. Lors de la réorganisation, cette observation est généralement désordonnée (principe de l'arrivée avant).

(Tutoriels associés recommandés :

Programme d'entrée Java)

4. Quel est le principe de la mise à niveau des verrous multi-thread ?

En Java, il existe quatre états de verrouillage. Les niveaux de faible à élevé sont : le verrouillage sans état, le verrouillage biaisé, le verrouillage léger et l'état de verrouillage lourd. Ces états changeront progressivement avec le temps. dégénère. Les verrous peuvent être améliorés mais pas dégradés.

Processus illustré de mise à niveau du verrou :

Questions dentretien sur les nouvelles Java 2020 - Multi-threading (3)

5. Qu'est-ce qu'une impasse ?

L'impasse fait référence à un phénomène de blocage provoqué par deux ou plusieurs processus en compétition pour les ressources ou communiquant entre eux pendant l'exécution, ils seront tous incapables de continuer. À ce moment-là, on dit que le système est dans un état de blocage ou que le système est dans une impasse. Ces processus qui s'attendent toujours les uns les autres sont appelés processus de blocage.

Tutoriel recommandé :

questions d'entretien Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer