Maison >Problème commun >Le processus parent et le processus enfant peuvent-ils s'exécuter simultanément ?
Le processus parent et le processus enfant peuvent être exécutés simultanément ; le processus parent et le processus enfant sont les plus petites unités d'allocation de ressources par le système. Ce sont des processus indépendants et peuvent être exécutés simultanément. le temps au sens microscopique, mais seul le temps est alloué en plusieurs segments afin que plusieurs processus puissent s'exécuter rapidement et alternativement. D'un point de vue macro, il semble que ces processus s'exécutent tous.
L'environnement d'exploitation de ce tutoriel : système Windows 10, ordinateur DELL G3.
Peut être exécuté simultanément, Parce que le processus parent et le processus enfant sont la plus petite unité d'allocation de ressources par le système. exécutés simultanément. La relation avec les threads est différente.
"Parallèle" signifie que le micro et le macro sont exécutés ensemble, tout comme deux personnes creusant chacune un trou avec une pelle. Au bout d'une heure, chaque personne a un grand trou.
"Concurrency" n'est pas exécuté en même temps d'un point de vue micro. Il divise simplement le temps en plusieurs segments afin que plusieurs processus puissent s'exécuter rapidement et alternativement. D'un point de vue macro, il semble que ces processus s'exécutent tous. , ce qui revient à deux personnes utilisant la même pelle, elles creusent des trous à tour de rôle. Après une heure, deux personnes creusent chacune un trou plus petit. S'ils veulent creuser deux trous plus grands, cela prendra certainement deux heures.
Il n'est pas difficile de voir à partir de l'essence ci-dessus que l'exécution « simultanée » n'améliore pas fondamentalement l'efficacité de l'exécution en cas de conflits de ressources entre plusieurs processus.
Les processus père et fils sont simultanés.
Avec un seul processeur, le multi-traitement n'a pas beaucoup de sens. Le multitâche sur un seul processeur ne peut être effectué que simultanément (en alternant les interrogations avec les tranches de temps). À l'heure actuelle, au niveau macro, plusieurs tâches sont effectuées. en même temps. En fait, au niveau micro, ce qui précède se fait en alternance avec des tranches de temps, donc bien qu'elles s'exécutent ensemble dans une perspective macro, le temps utilisé pour exécuter un processus et un processus n'économise pas beaucoup. Le processus doit être suspendu ou mis en veille, cela peut prendre un peu plus de temps, mais s'il n'y a pas de suspension ou de mise en veille, le temps peut prendre un peu plus de temps, car il est également consommé par la conversion continue du processus du noyau dans la tranche de temps.
Mais avec les multiprocesseurs, le multitâche peut vraiment atteindre le parallélisme. Ce n'est que lorsque des conflits de ressources et une synchronisation sont nécessaires, faites une pause et attendez un moment, qu'il peut vraiment atteindre le parallélisme. Exécutez de manière asynchrone et simultanée. Mais comme mentionné ci-dessus, lorsque plusieurs processus sont confrontés à des conflits de ressources, l’efficacité d’exécution n’est pas fondamentalement améliorée.
Pour plus de connaissances connexes, veuillez visiter la rubrique FAQ !
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!