swoole では sleep 関数を使用するとプロセスがスリープブロックに陥るため、スリーププロセスを中断できるのはシグナルのみです swoole のシグナルは signalfd をベースとしているため、シグナルを送信してもスリープを中断することはできませんオペレーティング システムは、指定された時刻まで現在のプロセスを再起動しません。
このチュートリアルの動作環境: Windows 10 システム、Swoole 4 バージョン、DELL G3 コンピューター
swoole がスリープで使用できない理由
In 非同期 IO プログラムでは、sleep/usleep/time_sleep_until/time_nanosleep を使用してはなりません。 (スリープは、すべてのスリープ関数を指すために以下で使用されます)
スリープ関数により、プロセスはスリープ ブロッキングに陥ります。指定された時間が経過すると、オペレーティング システムが起動されます。そのときのみ、現在のプロセスが再起動されます。
スリープ プロセス中は、シグナルのみが中断できます。
Swoole の信号処理は signalfd に基づいて実装されているため、シグナルが送信されてもスリープを中断することはできません。
Swoole が提供する swoole_event_add、swoole_timer_tick、swoole_timer_after、swoole_process::signal、および非同期 swoole_clientプロセスがスリープすると動作を停止します。 swoole_server は新しいリクエストを処理できなくなりました。
$serv = new swoole_server("127.0.0.1", 9501); $serv->set(['worker_num' => 1]); $serv->on('receive', function ($serv, $fd, $from_id, $data) { sleep(100); $serv->send($fd, 'Swoole: '.$data); }); $serv->start();
スリープ関数が onReceive イベントで実行され、サーバーは 100 秒以内にそれ以上クライアント リクエストを受信できなくなります。 推奨学習:
swoole チュートリアル以上がなぜswooleは睡眠を使用できないのですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 中国語版
中国語版、とても使いやすい

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ホットトピック









