라이브러리
[PHP] Pool::submitTo - 실행을 위해 특정 작업자에게 작업을 제출합니다.
Pool::submitTo() 함수
Pool::submitTo() 함수는 PHP의 Swoole coroutine pool 기능을 사용하여 작업을 제출하는 데 사용됩니다. 이 함수는 coroutine pool에 작업을 제출하고, 작업이 완료되면 결과를 반환합니다.
Pool::submitTo() 함수의 사용법
Pool::submitTo() 함수의 사용법은 다음과 같습니다.
#hostingforum.kr
php
$pool = new SwooleCoroutinePool($size);
$task = $pool->submitTo($workerId, $callback, ...$args);
* `$pool`: coroutine pool 객체
* `$workerId`: 작업을 제출할 워커 ID
* `$callback`: 작업을 처리할 콜백 함수
* `$args`: 콜백 함수에 전달할 인자
예제
다음 예제는 Pool::submitTo() 함수를 사용하여 작업을 제출하고, 결과를 반환하는 방법을 보여줍니다.
#hostingforum.kr
php
use SwooleCoroutinePool;
// coroutine pool 객체 생성
$pool = new Pool(5);
// 작업을 제출할 콜백 함수
function task($num) {
echo "Worker ID: " . swoole_coroutine_getuid() . "
";
echo "Task ID: " . $num . "
";
sleep(1);
return $num * 2;
}
// 작업을 제출
$task = $pool->submitTo(0, 'task', 1);
$task2 = $pool->submitTo(1, 'task', 2);
$task3 = $pool->submitTo(2, 'task', 3);
// 결과를 출력
echo "Task 1 Result: " . $task->getResult() . "
";
echo "Task 2 Result: " . $task2->getResult() . "
";
echo "Task 3 Result: " . $task3->getResult() . "
";
이 예제에서는 coroutine pool 객체를 생성하고, 작업을 제출하는 콜백 함수를 정의합니다. 작업을 제출한 후, 결과를 출력하는 코드를 추가합니다.
결과
이 예제를 실행한 후, 다음 결과가 출력됩니다.
#hostingforum.kr
Worker ID: 1
Task ID: 1
Worker ID: 2
Task ID: 2
Worker ID: 3
Task ID: 3
Task 1 Result: 2
Task 2 Result: 4
Task 3 Result: 6
이 예제는 Pool::submitTo() 함수를 사용하여 작업을 제출하고, 결과를 반환하는 방법을 보여줍니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.