Process
public class Process
Constant Summary | |
---|---|
final static str | |
final static str | |
final static str | |
final static str | |
final static str | |
final static int | |
final static int | |
final static int | |
final static int |
Field Summary | |
---|---|
static array |
Constructor Summary | |
---|---|
void | __construct(string commandline, string|null cwd, array|null env, string|null input, int|float|null timeout, array options) 构造方法 |
Method Summary | |
---|---|
int | run(callback|null callback) 运行指令 |
self | mustRun(callable|null callback) 运行指令 |
void | start(callable|null callback) 启动进程并写到 STDIN 输入后返回。 |
Process | restart(callable|null callback) 重启进程 |
int | wait(callable|null callback) 等待要终止的进程 |
int|null | getPid() 获取PID |
Process | signal(int signal) 将一个 POSIX 信号发送到进程中 |
Process | 禁用从底层过程获取输出和错误输出。 |
Process | 开启从底层过程获取输出和错误输出。 |
bool | 输出是否禁用 |
string | 获取当前的输出管道 |
string | 以增量方式返回的输出结果。 |
Process | 清空输出 |
string | 返回当前的错误输出的过程 (STDERR)。 |
string | 以增量方式返回 errorOutput |
Process | 清空 errorOutput |
null|int | 获取退出码 |
null|string | 获取退出文本 |
bool | 检查是否成功 |
bool | 是否未捕获的信号已被终止子进程 |
int | 返回导致子进程终止其执行的数。 |
bool | 检查子进程信号是否已停止 |
int | 返回导致子进程停止其执行的数。 |
bool | 检查是否正在运行 |
bool | 检查是否已开始 |
bool | 检查是否已终止 |
string | 获取当前的状态 |
void | stop() 终止进程 |
void | addOutput(string line) 添加一行输出 |
void | addErrorOutput(string line) 添加一行错误输出 |
string | 获取被执行的指令 |
self | setCommandLine(string commandline) 设置指令 |
float|null | 获取超时时间 |
float|null | 获取idle超时时间 |
self | setTimeout(int|float|null timeout) 设置超时时间 |
self | setIdleTimeout(int|float|null timeout) 设置idle超时时间 |
self | setTty(bool tty) 设置TTY |
bool | isTty() 检查是否是tty模式 |
self | setPty(bool bool) 设置pty模式 |
bool | isPty() 是否是pty模式 |
string|null | 获取工作目录 |
self | setWorkingDirectory(string cwd) 设置工作目录 |
array | getEnv() 获取环境变量 |
self | setEnv(array env) 设置环境变量 |
null|string | getInput() 获取输入 |
self | setInput(mixed input) 设置输入 |
array | 获取proc_open的选项 |
self | setOptions(array options) 设置proc_open的选项 |
bool | getEnhanceWindowsCompatibility() 是否兼容windows |
self | setEnhanceWindowsCompatibility(bool enhance) 设置是否兼容windows |
bool | getEnhanceSigchildCompatibility() 返回是否 sigchild 兼容模式激活 |
self | setEnhanceSigchildCompatibility(bool enhance) 激活 sigchild 兼容性模式。 |
void | 是否超时 |
static bool | 是否支持pty |
protected callable | buildCallback(callable|null callback) 建立 wait () 使用的回调。 |
protected void | updateStatus(bool blocking) 更新状态 |
protected bool | 是否开启 '--enable-sigchild' |
public final static str ERR = 'err'
public final static str OUT = 'out'
public final static str STATUS_READY = 'ready'
public final static str STATUS_STARTED = 'started'
public final static str STATUS_TERMINATED = 'terminated'
public final static int STDERR = 2
public final static int STDIN = 0
public final static int STDOUT = 1
public final static int TIMEOUT_PRECISION = 0.2
public static array $exitCodes = [
0 => 'OK'
public void __construct(string commandline, string|null cwd, array|null env, string|null input, int|float|null timeout, array options)
构造方法
public int run(callback|null callback)
运行指令
public self mustRun(callable|null callback)
运行指令
public void start(callable|null callback)
启动进程并写到 STDIN 输入后返回。
public Process restart(callable|null callback)
重启进程
public int wait(callable|null callback)
等待要终止的进程
public int|null getPid()
获取PID
public Process signal(int signal)
将一个 POSIX 信号发送到进程中
public Process disableOutput()
禁用从底层过程获取输出和错误输出。
public Process enableOutput()
开启从底层过程获取输出和错误输出。
public bool isOutputDisabled()
输出是否禁用
public string getOutput()
获取当前的输出管道
public string getIncrementalOutput()
以增量方式返回的输出结果。
public Process clearOutput()
清空输出
public string getErrorOutput()
返回当前的错误输出的过程 (STDERR)。
public string getIncrementalErrorOutput()
以增量方式返回 errorOutput
public Process clearErrorOutput()
清空 errorOutput
public null|int getExitCode()
获取退出码
public null|string getExitCodeText()
获取退出文本
public bool isSuccessful()
检查是否成功
public bool hasBeenSignaled()
是否未捕获的信号已被终止子进程
public int getTermSignal()
返回导致子进程终止其执行的数。
public bool hasBeenStopped()
检查子进程信号是否已停止
public int getStopSignal()
返回导致子进程停止其执行的数。
public bool isRunning()
检查是否正在运行
public bool isStarted()
检查是否已开始
public bool isTerminated()
检查是否已终止
public string getStatus()
获取当前的状态
public void stop()
终止进程
public void addOutput(string line)
添加一行输出
public void addErrorOutput(string line)
添加一行错误输出
public string getCommandLine()
获取被执行的指令
public self setCommandLine(string commandline)
设置指令
public float|null getTimeout()
获取超时时间
public float|null getIdleTimeout()
获取idle超时时间
public self setTimeout(int|float|null timeout)
设置超时时间
public self setIdleTimeout(int|float|null timeout)
设置idle超时时间
public self setTty(bool tty)
设置TTY
public bool isTty()
检查是否是tty模式
public self setPty(bool bool)
设置pty模式
public bool isPty()
是否是pty模式
public string|null getWorkingDirectory()
获取工作目录
public self setWorkingDirectory(string cwd)
设置工作目录
public array getEnv()
获取环境变量
public self setEnv(array env)
设置环境变量
public null|string getInput()
获取输入
public self setInput(mixed input)
设置输入
public array getOptions()
获取proc_open的选项
public self setOptions(array options)
设置proc_open的选项
public bool getEnhanceWindowsCompatibility()
是否兼容windows
public self setEnhanceWindowsCompatibility(bool enhance)
设置是否兼容windows
public bool getEnhanceSigchildCompatibility()
返回是否 sigchild 兼容模式激活
public self setEnhanceSigchildCompatibility(bool enhance)
激活 sigchild 兼容性模式。
public void checkTimeout()
是否超时
public static bool isPtySupported()
是否支持pty
protected callable buildCallback(callable|null callback)
建立 wait () 使用的回调。
protected void updateStatus(bool blocking)
更新状态
protected bool isSigchildEnabled()
是否开启 '--enable-sigchild'