ホームページ >バックエンド開発 >PHPチュートリアル >set 関数の実行時間を決定するにはどうすればよいですか?
function a(){
//...
return true; }
function b(){
//...
return false;
次の場合を想像してください。 )、1.2 秒後に結果が返されない場合は、すぐに b() を呼び出してください
これに対処する美しい方法はありますか?
ディスカッションへの返信 (解決策)
1. Ajax タイムアウトの解釈 欠点: 時間の精度が十分ではない 長所: この関数は実装可能一時的に
2. PHP の C 言語拡張 欠点: 難しすぎてコスト効率が悪い 利点: 正確な時間と高効率
3. マスターを待つ...
Libevent はタイマーの機能を実装できますが、関数は実装する必要がありますネットワークタスクを実行する必要がある場合、タイムアウト設定が必要です
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 の実行時間で計算されるわけではありません。 。 。