Common processes and threads in PHP programming
1. What is a process (Recommended learning: PHP Video tutorial)
A process is an instance of program execution, and a process can be allocated to resources such as CPU and memory. A process generally includes an instruction set and system resources, where the instruction set is your code, and system resources include CPU, memory, I/O, etc.
2. What is a thread?
A thread is an execution stream of a process. A thread cannot allocate system resources. It is part of the process and runs independently smaller than the process. The unit.
Explain: The process has two characteristics: one is the ownership of the resource, and the other is the scheduling execution (instruction set). The thread is part of the scheduling execution, which refers to the path of the process execution process, also called program execution. flow. Threads are sometimes called lightweight processes.
3. The relationship between processes and threads
The process is like a landlord, with land (system resources), and the thread is like a tenant (thread, executing the farming process). Each landlord (process) only needs one working tenant (thread).
Process - the smallest unit of resource allocation, relatively robust, crashes generally do not affect other processes, but switching processes consumes resources and is less efficient.
Thread - the smallest unit of program execution. There is no independent address space. If one thread dies, the entire process may die, but it saves resources and has high switching efficiency.
4. Common processes and threads in PHP programming
1. In web applications, every time we access PHP, we create a PHP process, and of course we will also create At least one PHP thread.
2. PHP uses pcntl for multi-process programming.
3. PHP uses pthreads for multi-thread programming.
4. Each process of nginx has only one thread. Each thread can handle access from multiple clients
5. php-fpm uses a multi-process model. Each process has only one thread, and each thread can only handle one client access.
6. Apache may use a multi-process model or a multi-thread model, depending on which SAPI is used.
The above is the detailed content of php process or thread. For more information, please follow other related articles on the PHP Chinese website!