若转载教程,请注明出自SW-X框架官方文档

1、什么是进程

进程Process是计算机中的程序关于某数据集合上的一次运行活动,是系统分配资源和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体。在当代面向线程设计的计算机结构中,进程是线程的容器。简单来说,程序是指令、数据以及其组织形式的描述,而进程则是程序的实体。
在操作系统中,进程表示正在运行的程序,例如在终端中使用PHP命令运行PHP脚本,此时就相当于创建了一个进程,这个进程会在系统中驻存,申请属于它自己的内存空间和系统资源,并且运行相应的程序。
原生PHP可以使用 posix_getpid()函数获取当前进程ID;在Swoole中,我们可以使用swoole_set_process_name()函数设置进程的别名,DEMO如下,build.php:

  1. <?php
  2. //获取当前进程的PID
  3. echo posix_getpid();
  4. //修改所在进程的名称
  5. swoole_set_process_name("swoole process master");
  6. //模拟持续运行100秒的程序
  7. sleep(100);
  8. //持续运行100秒的目的是为了在进程中可以查看而不至于很快结束

Linux下运行程序:

  1. php build.php

对于一个进程来说,最核心的内容可分为两部分:
一部分是它的内存,这个内存是在创建初始时从系统中分配的,进程中所有创建的变量都会存储在内存环境中。
另一部分是上下文环境,进程是运行在操作系统中的,对于程序而言,它的运行依赖于操作系统分配的资源、操作系统的状态以及程序自身的状态,这些就构成了进程的上下文环境。