GNU/Linux >> Linux の 問題 >  >> Linux

ソケットを使用した C のイベント ドリブン モデル

「このモデルの背後にある哲学は何ですか」

イベント駆動型とは、「監視」がなく、イベント自体がアクションを開始することを意味します。

通常、これは外部デバイスからシステムへの信号である割り込み、または (ソフトウェア割り込みの場合) 非同期プロセスによって開始されます。

https://en.wikipedia.org/wiki/割り込み

さらなる読書はここにあるようです:

https://docs.oracle.com/cd/E19455-01/806-1017/6jab5di2m/index.html#sockets-40-「割り込み駆動型ソケット I/O」

また、http://cs.baylor.edu/~donahoo/practical/CSockets/textcode.html には、割り込み駆動型ソケットの例と、他のソケット プログラミングの例があります。


以下を必ずお読みください:http://www.kegel.com/c10k.html.そのページは、イベント駆動型および非同期技術の完全な概要です。

ただし、即答 :イベント駆動型はノンブロッキングでも非同期でもありません。

イベント ドリブンとは、プロセスがファイル記述子 (およびソケット) を監視し、記述子でイベントが発生した場合にのみ動作することを意味します (イベントとは、データの受信、エラー、書き込み可能になったなどです)。

BSD ソケットには「select()」関数があります。呼び出されると、OS は記述子を監視し、記述子の 1 つで何らかのイベントが発生するとすぐにプロセスに戻ります。

ただし、上記の Web サイトには、はるかに優れた説明 (およびさまざまな API に関する詳細) があります。


Linux
  1. 一部のコマンドでBashプロセス置換が機能しないのはなぜですか?

  2. Ddでバイナリにパッチを適用しますか?

  3. 名前がSsh-*の/tmp内の奇妙なフォルダ?

  1. I3でキーボードレイアウトを切り替えますか?

  2. ISPConfigを使用するサーバーにいくつかのプラグインを使用してAWStatsをインストールする方法

  3. MySQLイベントスケジューラ

  1. trace-cmdを使用したカーネルトレース

  2. パターンの前にテキストを追加する際に、大文字と小文字を区別しないで sed を使用する

  3. ethtool を使用して一部のアドバタイズされたリンク モードを削除する