Maison >Java >JavaBase >qu'est-ce que le fil Java

qu'est-ce que le fil Java

angryTom
angryTomoriginal
2019-11-12 09:40:212781parcourir

qu'est-ce que le fil Java

Qu'est-ce qu'un thread Java ?

Un thread en Java fait référence à un membre du groupe Java Classe .lang.Thread L'exécution d'une instance ou d'un thread. Utilisez l'interface java.lang.Thread ou java.lang.Runnable pour écrire du code permettant de définir, d'instancier et de démarrer de nouveaux threads.

1. Processus

Un processus fait référence à une application exécutée en mémoire. Chaque processus possède son propre bloc mémoire indépendant. , plusieurs threads peuvent être démarrés en un seul processus. Par exemple, dans les systèmes Windows, un exe en cours d’exécution est un processus.

2. Thread

Un thread fait référence à un processus d'exécution dans un processus, et un processus peut exécuter plusieurs threads. Par exemple, le processus java.exe peut exécuter de nombreux threads. Les threads entrent toujours dans un processus et plusieurs threads d'un processus partagent la mémoire du processus.

Tutoriel recommandé : Tutoriel Java

3. Le modèle de thread Java

Puisque Java est un langage purement orienté objet, , le modèle de thread de Java est également orienté objet. Java encapsule toutes les fonctions nécessaires des threads via la classe Thread. Pour créer un thread, il doit y avoir une fonction d'exécution de thread. Cette fonction d'exécution de thread correspond à la méthode run de la classe Thread. La classe Thread possède également une méthode start, qui est chargée d'établir un thread, ce qui équivaut à appeler la fonction de création de thread Windows CreateThread. Lorsque la méthode start est appelée, si le thread est établi avec succès, la méthode run de la classe Thread est automatiquement appelée. Par conséquent, toute classe Java qui hérite de Thread peut créer un thread via la méthode start de la classe Thread. Si vous souhaitez exécuter votre propre fonction d'exécution de thread, vous devez remplacer la méthode run de la classe Thread.

En plus de la classe Thread dans le modèle de thread Java, il existe également une interface Runnable qui identifie si une certaine classe Java peut être utilisée comme classe de thread. Cette interface n'a qu'une seule exécution de méthode abstraite, qui est. la fonction d'exécution de thread du modèle de thread Java. Par conséquent, le seul critère pour une classe de thread est de savoir si la classe implémente la méthode run de l'interface Runnable. En d'autres termes, une classe avec une fonction d'exécution de thread est une classe de thread.

Comme le montre ce qui précède, il existe deux façons de créer un thread en Java, l'une consiste à hériter de la classe Thread et l'autre consiste à implémenter Runnable L'interface et les Threads sont créés via Thread et les classes qui implémentent Runnable. En fait, ces deux méthodes sont essentiellement la même méthode, c'est-à-dire qu'elles créent toutes deux des threads via la classe Thread et exécutent la méthode run. Mais leur grande différence est que les threads sont créés en héritant de la classe Thread. Bien que cela soit plus facile à implémenter, puisque Java ne prend pas en charge l'héritage multiple, si cette classe de thread hérite de Thread, elle ne peut pas hériter d'autres classes. méthodes pour établir des threads en implémentant l'interface Runnable, afin que les classes de thread puissent hériter des classes liées à l'entreprise si nécessaire, au lieu de la classe Thread.

● Les programmes Java s'exécutent tous dans la machine virtuelle Java (JVM). Au sein de la JVM, le multitâche du programme est implémenté via des threads. Chaque fois qu'une application Java est démarrée avec la commande Java, un processus JVM est démarré. Dans un même processus JVM, il n’y a qu’un seul processus, qui est lui-même. Dans cet environnement JVM, tout le code du programme s'exécute dans des threads.

● Généralement, les applications Java courantes sont monothread. Par exemple, lorsque vous utilisez la commande java pour exécuter l'application Java HelloWorld la plus simple, un processus JVM est démarré. La JVM trouve le point d'entrée du programme, main(), puis exécute la méthode main(), créant ainsi un thread. .Ce thread est appelé le thread principal. Lorsque la méthode principale se termine, le thread principal est terminé. Le processus JVM se ferme également immédiatement.

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
Article précédent:qu'est-ce que le flux en JavaArticle suivant:qu'est-ce que le flux en Java