Heim  >  Artikel  >  Backend-Entwicklung  >  php多线程求答疑,该怎么处理

php多线程求答疑,该怎么处理

WBOY
WBOYOriginal
2016-06-13 11:26:58733Durchsuche

php多线程求答疑
在网上看到一些demo,很多一样的,自己拿到本机测试,出了点问题:
//a.php 
function runThread(){ 
$fp = fsockopen('localhost', 80, $errno, $errmsg); 
fputs($fp, "GET /a.php?act=b"); 
fclose($fp);
}

function a(){
$fp = fopen('result_a.log', 'w'); 
fputs($fp, 'Set in ' . Date('h:i:s', time()) . (double)microtime() . "\r\n"); 
fclose($fp);
}

function b(){ 
$fp = fopen('result_b.log', 'w'); 
fputs($fp, 'Set in ' . Date('h:i:s', time()) . (double)microtime() . "\r\n"); fclose($fp);
}

if(!isset($_GET['act'])) $_GET['act'] = 'a';

if($_GET['act'] == 'a'){ 
runThread(); 
a();
}
else if($_GET['act'] == 'b') b();
?>

每次我访问localhost/a.php时,只能在result_a.log中写入记录,result_b.log中从来不会写入记录,我确定我的php环境中已经可以启用fsocket扩展了的,求高手指点一下

多线程 php
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn