如何判断设置函数执行时间?

WBOY
풀어 주다: 2016-06-23 14:04:36
원래의
1046명이 탐색했습니다.

function a(){
//...
return true;
}
function b(){
//...
return false;
}
现在开始调用a();

设想是如果a(),1.2秒后未返回结果,立马调用b();
有啥漂亮的处理方法?


回复讨论(解决方案)


不要难为自己了也不要难为PHP了

我的解决方案 
1、ajax 超时判读  缺点:时间不够准确           优点:可暂时实现此功能
2、PHP的C语言扩展 缺点:难度偏大性价比不高     优点:时间准确效率高
3、坐等大牛....

libevent可以实现定时器的功能,不过你的a函数应该是执行网络任务吧,如果是的话那就肯定有timeout的设置

php 本身就提供了此类功能
是否漂亮,你自己判断
不是什么操作都计算在 php 运行时间里的,你自己验证一下

register_shutdown_function( "time_out_callback");set_time_limit( 2 );//假设2秒就算超时//模拟超时@c();//error_reporting($es);//恢复设置function time_out_callback() {  if(connection_status() == 2) {    b();      }}function c() {  //你的可能的超时代码  echo __FUNCTION__, ' ';  while (true) {    echo '.';    //        echo connection_status()."<br/>";//echo 0    usleep( 100000 );//给cpu透口气  }}function b() {  echo '<br>' . __FUNCTION__, ' ';  echo 'c超时 连接状态:' . connection_status();//echo 2,c超时}
로그인 후 복사

php 本身就提供了此类功能
是否漂亮,你自己判断
不是什么操作都计算在 php 运行时间里的。。。
版主给力,灰常漂亮,虽然结果不是很稳定(改usleep值一会一个结果),php这样估计也到极限了

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿