1
This commit is contained in:
@@ -1,10 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Kiri\Process;
|
||||
|
||||
interface OnProcessInterface
|
||||
{
|
||||
|
||||
public function handle();
|
||||
|
||||
}
|
||||
@@ -1,88 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Kiri\Process;
|
||||
|
||||
abstract class Process implements OnProcessInterface
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* @var \Swoole\Process
|
||||
*/
|
||||
protected \Swoole\Process $process;
|
||||
|
||||
|
||||
/**
|
||||
* @var mixed
|
||||
*/
|
||||
protected mixed $redirect_stdin_and_stdout = null;
|
||||
|
||||
|
||||
/**
|
||||
* @var int
|
||||
*/
|
||||
protected int $pipe_type = SOCK_DGRAM;
|
||||
|
||||
|
||||
/**
|
||||
* @var bool
|
||||
*/
|
||||
protected bool $enable_coroutine = true;
|
||||
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected string $name = '';
|
||||
|
||||
/**
|
||||
* @return \Swoole\Process
|
||||
*/
|
||||
public function getProcess(): \Swoole\Process
|
||||
{
|
||||
return $this->process;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getRedirectStdinAndStdout(): mixed
|
||||
{
|
||||
return $this->redirect_stdin_and_stdout;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getPipeType(): int
|
||||
{
|
||||
return $this->pipe_type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function isEnableCoroutine(): bool
|
||||
{
|
||||
return $this->enable_coroutine;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName(): string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param \Swoole\Process $process
|
||||
*/
|
||||
public function start(\Swoole\Process $process)
|
||||
{
|
||||
$this->process = $process;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Kiri\Process;
|
||||
|
||||
require_once 'OnProcessInterface.php';
|
||||
require_once 'Process.php';
|
||||
|
||||
use function Co\run;
|
||||
|
||||
class TestProcess extends Process
|
||||
{
|
||||
|
||||
|
||||
protected string $name = 'test process';
|
||||
|
||||
|
||||
/**
|
||||
*/
|
||||
public function onStart()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public function handle()
|
||||
{
|
||||
// TODO: Implement doWhile() method.
|
||||
}
|
||||
|
||||
|
||||
public function onShutdown()
|
||||
{
|
||||
// TODO: Implement onShutdown() method.
|
||||
}
|
||||
}
|
||||
|
||||
$array = [];
|
||||
|
||||
for ($i = 0; $i < 10; $i++) {
|
||||
$class = new TestProcess();
|
||||
$process = new \Swoole\Process([$class, 'start'], $class->getRedirectStdinAndStdout(),
|
||||
$class->getPipeType(), $class->isEnableCoroutine());
|
||||
$process->start();
|
||||
|
||||
array_push($array, $process);
|
||||
}
|
||||
run(function () use ($array) {
|
||||
|
||||
foreach ($array as $value) {
|
||||
var_dump($value->getCallback());
|
||||
}
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user