Cette capacité des entités parallèles à partager le même espace d'adressage et toutes les données disponibles ne peut pas être exprimée par des verrous multi-processus, car plusieurs processus ont des espaces d'adressage différents
Les threads sont plus légers et plus rapides que les processus ;
Lorsque de nombreux traitements et calculs d'E/S sont nécessaires, le fait d'avoir plusieurs threads peut améliorer considérablement les performances.
Dans les systèmes multi-CPU, le multi-threading est bénéfique. Dans un tel système, la physique peut être véritablement réalisée en plusieurs. -fonctionnement parallèle threadé sur l'ordinateur
Accélération de la réponse du programme
Lorsqu'il n'y a aucune tâche à traiter, le temps du processeur peut être attribué à d'autres tâches ;
Inconvénients du multi-threading
La gestion des threads nécessite une surcharge CPU supplémentaire ;
Interblocage des threads, c'est-à-dire plus d'attente longue ou de compétition de ressources,Nous ne pouvons pas seulement considérer le problème au niveau du code, nous devons également considérer l'environnement dans lequel le code s'exécute. En observant les paramètres de notre machine virtuelle, nous avons constaté qu'il y a 4 processeurs, au moins deux processeurs sont en train de traiter. d'autres threads, et il y a un thread Dans le cas de deux processeurs, lorsqu'ils sont accessibles en même temps, la probabilité d'occurrence est inférieure à 5 000, ce qui est relativement élevé, ce qui est également dû à une exécution parallèle.
Après avoir activé un seul processeur, un seul thread est en cours d'exécution et les quatre autres threads ne s'exécutent définitivement pas. Il n'y a aucune situation où deux threads sont exécutés en même temps.
La probabilité d'apparaître inférieure à 5000 est très faible (la raison est qu'après avoir lu la valeur val 1, vous n'avez pas eu le temps de ++ revenir en arrière. A ce moment, la tranche horaire est arrivée, et un switch a s'est produit lors du passage à d'autres threads, la valeur est toujours 1, ajoutez plus, récupération sur site, ajoutez toujours 1, la probabilité que ce scénario se produise est très faible) 1 processeur ne peut pas être parallélisé.
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!