? Programmes d' ordinateur peut exécuter plusieurs blocs de code en même temps grâce à la simultanéité du programme. Cela permet une grande souplesse dans la mesure où les programmes peuvent traiter les demandes ou les données séparément du programme principal sans affecter l'exécution du programme lui-même . Les programmes font grâce à l'utilisation de threads. La gestion de ces fils d'exécution comprend la gestion de leurs ressources et de la façon dont le programme vise à surveiller. Une différence entre la façon dont un programme maintient fils est représentée par la différence entre " joignable " et fils " détachés " . Discussions
Dans la programmation informatique , la programmation « multithread » ou « parallèle » fait référence à la technique de création des threads séparés d'exécution dans le même programme . Chaque thread dans un programme exécute un code aux côtés des autres fils dans ce programme, permettant de multiples blocs de code à exécuter en même temps . Lorsqu'un programme commence , il ya toujours un fil , le fil "main" , à partir de laquelle les autres threads peuvent lancer pour traiter d'autres blocs de code.
Discussions juxtaposables
Avec différents threads s'exécutant en même temps dans le même programme , l'entretien du fil devient cruciale. Une façon de discussions maintien est d'utiliser les capacités «Join» . Discussions juxtaposables longent les autres threads d'un programme, ce qui est typique des threads. Toutefois, le thread principal peut attendre pour rejoindre le fil engendré . Le thread principal , au lieu d'exécuter plus de code , peut utiliser la fonction join du fil pour permettre un autre thread à terminer sa tâche. Le fil engendré , une fois terminé, retourne un code de sortie signalant une sortie normale ou d'une erreur , et le thread principal reprend l'exécution .
Discussions Détaché
Détaché threads fonctionnent un peu différemment . Quand un thread est explicitement détaché de son thread principal , il n'a plus de connexion à ce fil. Les pistes de fil et des sorties comme n'importe quel autre thread et puis se ferme lorsque vous avez terminé . Le thread principal ne peut pas suivre le fil engendré . Le fil engendré termine lorsque vous avez terminé , ce qui signifie le thread principal n'a pas à se joindre explicitement avec le fil plus tard dans le programme.
Résolution de Running discussions
adhésion et le retrait discussions permettent deux modes de gestion des threads différents . En laissant un fil comme joignable, le programmeur peut forcer le programme à rejoindre avec le fil plus tard dans l'exécution. Cette liaison doit se produire pour libérer les ressources utilisées par le fils engendré , comme la pile et la mémoire de tas. Un thread détaché, une fois détaché, exécute jusqu'à terminé, et le système récupère automatiquement les ressources utilisées . Toutefois, le thread principal ne peut pas vérifier l'état d'un thread détaché par une jointure . Par conséquent , le programme principal ne sait pas si , fil détaché engendré achevé sa tâche avec succès , car elle ne reçoit jamais un code de sortie du fil.