問題タブ [poll-syscall]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - poll() を強制的にエラーにする方法
poll() がエラーを返したときに、コードでシナリオをテストしようとしています。しかし、poll() に強制的にエラーを返す方法がわかりません。poll() を無期限にブロックして SIGINT を送信しようとしましたが、プロセスが停止するだけです。
poll() を取得してエラーを返す方法はありますか?
ありがとう。
c - poll() の実行と同時に設定された待機中の pollfd から fd を削除します
ソケット fds のリストを監視し、POLLIN イベントを待機しています。
まず、配列に fds を追加し、この配列で poll() を実行します。さらに、場合によっては、この配列から fd を (閉じずに) 削除したいことがあります。また、poll() の実行と同時に発生する場合もあります。
poll() の開始時にわかったのは、カーネルが配列をキャッシュし、pollfds を待機しているため、すぐに fd を削除したことを認識できないということですよね?
eventfd() でウェイクアップ メカニズムを実装し、それを使用してスレッドをウェイクアップし、配列から fd を削除し、引き続き新しい配列で poll() を実行できることがわかりました。
まず、poll() の実行中に pollfds 配列から fd を削除するだけでは、poll() はすぐにわからないというのは正しいですか? そして、明確にするために、pollfds配列の待機からfdを削除するための別のメカニズム(ウェイクアップメカニズムを除く)があるかもしれません.poll()はすぐに中断されますか?