Une fois que les programmeurs Java aller au-delà des projets d'apprentissage de base , et surtout si ils veulent commencer à travailler sur les jeux d'ordinateur, ils commencent à travailler avec des programmes multi-thread . Ce sont des conceptions de programme où l' application se lance plusieurs sous-tâches ou fils, d'exécuter simultanément les uns aux autres . Cela permet la création d' interfaces utilisateur plus sophistiqués que d'un programme monothread . Nécessité
Le besoin de plusieurs threads vient de la conception fondamentale de la plupart des langages de programmation , y compris Java. Un programme se déplace à travers son code de façon linéaire , l'exécution de chaque ensemble d'instructions telle qu'elle se présente à elle . Par conséquent, un programme de base , mono-thread ne peut remplir deux fonctions en même temps . Par exemple, un programme de base ne peut pas à la fois prendre l'entrée de l'utilisateur et d'exécuter une minuterie. La minuterie ferait une pause jusqu'à ce que l'utilisateur a terminé en tapant son entrée , à quel point la minuterie pourrait reprendre .
Multitâche
Un programme Java peut effectuer plusieurs tâches en affectant deux tâches qui doivent être exécutées en même temps à deux fils différents . Alors que dans un sens technique les fils ne sont pas exécutées parfaitement en parallèle, comme chaque thread est prévue pour différents temps d'accès de la CPU , le résultat final pour l'utilisateur est de deux tâches pour toutes fins exécuter simultanément . Toutefois, lorsque plusieurs threads sont en cours d'exécution que l'accès et modifient le même ensemble de variables , le programmeur doit utiliser des verrous ou d'autres méthodes de concurrence , afin d'assurer l'intégrité des données .
Classe Thread < br > Photos
nouvelles chaînes sont exécutées avec un objet " discussion " . Le programmeur écrit la sous-tâche du nouveau thread sera en charge dans une classe qui étend l'interface " Runnable ". Cela nécessite que la classe de méthode " public void run () " , ce qui sera le point de départ pour le nouveau thread . Pour démarrer le fil, le programmeur crée une nouvelle instance de sa classe sous-tâche , puis crée un nouvel objet de fil avec l'instance sous-tâche comme argument. Enfin , le programmeur invoque la " start () " méthode de la classe de fil pour commencer à courir le fil.
Daemon discussion
fils Daemon
sont des processus dont le seul but est de fournir des renseignements , ou pour effectuer des tâches , d'autres threads . Parce qu'un programme continuera à fonctionner tant qu'il y est un fil actif , les programmeurs ont besoin pour prendre soin de s'assurer que toutes les discussions se termineront par le temps de l'utilisateur quitte le programme . Threads démons de rendre le processus de conception du programme Java plus facile. Quand un programme ne s'est threads démon en cours d'exécution , il se ferme . Parce que les threads démon seul service d'autres threads , si toutes les autres fils sont partis , il est une conclusion logique que le programme est terminé. Les programmeurs Java tourner un fil régulier dans un thread démon en appelant la méthode " setDaemon " des objets thread qu'ils créent avec l'argument «vrai».