Processus et threads courants dans la programmation PHP
1. Qu'est-ce qu'un processus (Apprentissage recommandé : Tutoriel vidéo PHP )
Un processus est une instance d'exécution de programme, et un processus peut être alloué à des ressources telles que le processeur et la mémoire. Un processus comprend généralement un jeu d'instructions et des ressources système, le jeu d'instructions étant votre code et les ressources système comprenant le processeur, la mémoire, les E/S, etc.
2. Qu'est-ce qu'un thread
Un thread est un flux d'exécution d'un processus. Un thread ne peut pas allouer de ressources système. Il fait partie du processus et s'exécute indépendamment. plus petit que l’unité de processus.
Expliquez : le processus a deux caractéristiques : l'une est la propriété des ressources et l'autre est la planification de l'exécution (jeu d'instructions). Les threads font partie de la planification de l'exécution et font référence au chemin d'exécution du processus, également appelé programme. exécution. Les threads sont parfois appelés processus légers.
3. La relation entre les processus et les threads
Un processus est comme un propriétaire, avec un terrain (ressources système), et un thread est comme un locataire (thread, exécution du processus agricole). Chaque propriétaire (processus) n’a besoin que d’un seul locataire actif (thread).
Processus - la plus petite unité d'allocation de ressources, relativement robuste, les plantages n'affectent généralement pas les autres processus, mais le changement de processus consomme des ressources et est moins efficace.
Thread - la plus petite unité d'exécution de programme. Il n'a pas d'espace d'adressage indépendant. Si un thread meurt, l'ensemble du processus peut mourir, mais il économise des ressources et a une efficacité de commutation élevée.
4. Processus et threads courants dans la programmation PHP
1 Dans les applications Web, chaque fois que nous accédons à PHP, un processus PHP sera créé, et bien sûr nous. créera également au moins un thread PHP.
2. PHP utilise pcntl pour la programmation multi-processus
3. PHP utilise pthreads pour la programmation multi-thread
4. le thread peut gérer plusieurs accès client
5. php-fpm utilise un modèle multi-processus. Chaque processus n'a qu'un seul thread, et chaque thread ne peut gérer qu'un seul accès client.
6. Apache peut utiliser un modèle multi-processus ou un modèle multi-thread, selon le SAPI utilisé.
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!