PHP 멀티 쓰레딩
PHPPHP 멀티 쓰레딩
저는 개인적으로 PHP에서 멀티 쓰레딩이 필요하다고 보는 입장은 아닙니다만, 혹시 몰라서 적어둡니다.
물론 file_get_contents 나 파일 IO 관련 작업 등 PHP 자체의 작업이 아니라 외부에 접근한다던가 파일 시스템에 접근한다던가 하는 작업들은 이러한 비동기 구문을 쓰는 것도 괜찮습니다.
class AsyncOperation extends Thread {
public function __construct($arg) {
$this->arg = $arg;
}
public function run() {
if ($this->arg) {
$sleep = mt_rand(1, 10);
printf('%s: %s -start -sleeps %d' . "\n", date("g:i:sa"), $this->arg, $sleep);
sleep($sleep);
printf('%s: %s -finish' . "\n", date("g:i:sa"), $this->arg);
}
}
}
$stack = array();
foreach ( range("A", "D") as $i ) {
$stack[] = new AsyncOperation($i);
}
// 쓰레드 시작
foreach ( $stack as $t ) {
$t->start();
}
'PHP' 카테고리의 다른 글
PHP 랜덤 문자열 만들기 (0) | 2017.11.28 |
---|---|
PHP에서 self와 this의 차이 (0) | 2017.11.27 |
PHP에서 다음 페이지로 변수값 넘기기 (0) | 2017.11.26 |
PHP로 유튜브 썸네일 가져오기 (0) | 2017.11.26 |
PHP 배열 요소 삭제하기 (0) | 2017.11.25 |