troublete / task

此软件包已被弃用且不再维护。未建议替代软件包。

PHP 进程创建和子进程处理库。

2.1.1 2017-10-19 13:24 UTC

This package is not auto-updated.

Last update: 2020-01-24 17:11:55 UTC


README

PHP 进程创建和子进程处理库。

Build Status

安装

$ composer require troublete/task

使用方法

<?php
require_once '/path/to/autoload.php';

use function Task\{forkTask, checkSuccess};

$pid = forkTask(function () {
	// do something that is only happening in the forked process
});

// continue work...

checkSuccess($pid); // to check if the process finished with great success

API

函数

forkTask($taskClosure, $arguments = [], $signalHandler = null)

创建子进程的函数。如果成功,则返回创建的进程 ID,如果无法创建子进程,则抛出异常。

参数
参数 类型 描述
$taskClosure 可调用 仅子在进程执行的闭包函数
$arguments 数组 传递给子进程闭包的参数(可选)
$signalHandler 可调用 进程信号处理器(可选)

getProcessStatus($processId = null)

根据进程 ID 返回创建的子进程的状态。如果提供的进程 ID 为 null,则返回 0

参数
参数 类型 描述
$processId 整数 要检查的进程 ID

checkSuccess($processId = null)

根据进程状态返回进程是否已成功完成。如果此函数的返回值为 false,则不一定意味着进程失败。因为这是一个非阻塞过程检查。只是在检查点没有成功完成。

参数
参数 类型 描述
$processId 整数 要检查的进程 ID

closeTask($processId = null)

关闭创建的进程的函数。如果成功,则返回 true

参数
参数 类型 描述
$processId 整数 要检查的进程 ID

许可证

GPL-2.0 © Willi Eßer