Maison  >  Article  >  Java  >  Compréhension de la synchronisation des threads en Java

Compréhension de la synchronisation des threads en Java

王林
王林original
2019-12-06 13:53:252546parcourir

Compréhension de la synchronisation des threads en Java

Tout d'abord, comprenez ce qu'est un fil de discussion ?

Nous pouvons exécuter divers logiciels informatiques sur nos ordinateurs. Chaque programme en cours d'exécution peut inclure plusieurs threads exécutés indépendamment (Threads).

Thread est un programme exécuté de manière indépendante avec sa propre pile d'exécution dédiée. Les threads peuvent partager certaines ressources avec d'autres threads, telles que la mémoire, les fichiers, les bases de données, etc.

Lorsque plusieurs threads lisent et écrivent la même ressource partagée en même temps, des conflits peuvent survenir. À l'heure actuelle, nous devons introduire un mécanisme de « synchronisation » des threads, c'est-à-dire que chaque thread doit être selon le principe du premier arrivé, premier servi et ne peut pas être entassé.

Tutoriels vidéo en ligne recommandés : Cours Java

Introduction à la synchronisation des threads

Le véritable sens de la synchronisation des threads coïncide avec le sens littéral, au contraire. La véritable signification de la synchronisation des threads est en fait la « mise en file d'attente » : plusieurs threads doivent se mettre en file d'attente et fonctionner sur des ressources partagées un par un, plutôt que de fonctionner en même temps.

Donc, le premier point à retenir à propos de la synchronisation des threads est le suivant : la synchronisation des threads est une file d'attente des threads. La synchronisation est en file d'attente.

Le but de la synchronisation des threads est d'éviter l'exécution "synchrone" des threads.

Concernant la synchronisation des threads, le deuxième point qu'il faut garder à l'esprit est le mot "partage". Seuls les accès en lecture et en écriture aux ressources partagées nécessitent une synchronisation. Si les ressources ne sont pas partagées, aucune synchronisation n’est nécessaire.

Concernant la synchronisation des threads, le troisième point à garder à l'esprit est que seules les "variables" nécessitent un accès synchrone. Si la ressource partagée est fixe, elle équivaut à une « constante », et les threads lisant la constante en même temps n'ont pas besoin d'être synchronisés. Au moins un thread modifie la ressource partagée. Dans ce cas, une synchronisation entre les threads est requise.

Concernant la synchronisation des threads, le quatrième point à garder à l'esprit est que le code utilisé par plusieurs threads pour accéder aux ressources partagées peut être le même code ou des codes différents, que le même code soit exécuté ou non ; Tant que le code de ces threads accède à la même ressource partagée mutable, une synchronisation est requise entre ces threads.

Articles et tutoriels connexes recommandés : Démarrage rapide 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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn