イベントループ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/06/06 17:09 UTC 版)
イベントループ (event loop)、メッセージディスパッチャ (message dispatcher)、メッセージループ (message loop)、メッセージポンプ (message pump)、ランループ (run loop) とは、プログラム内でイベントやメッセージを待ち受け、それらをディスパッチ(配送)する構成要素である。内部または外部の「イベントプロバイダー」(通常、イベントが到着するまで要求をブロックする)に要求することで動作し、次いで適当なイベントハンドラー (event handler) を呼び出す(イベントのディスパッチ)。イベントプロバイダーが後述のファイルインタフェースに従う場合、イベントループは reactor と連携する形で使われることがあり、select()
または poll()
を使ってファイルインタフェースにアクセスする。イベントループはほぼ常にメッセージの発信元とは非同期に動作する。
注釈
出典
- ^ D. J. Bernstein. “The self-pipe trick”. 2013年2月5日閲覧。
- ^ BUGS,
pselect(2)
: synchronous I/O multiplexing – Linux System Calls Manual (en) - ^ WinMain function (winbase.h) | Microsoft Docs
- ^ Window Procedures - Windows applications | Microsoft Docs
- ^ GetMessageW function (winuser.h) | Microsoft Docs
- ^ PeekMessageW function (winuser.h) | Microsoft Docs
- ^ GetMessage() function with message priority list.[要説明]
- ^ Idle Loop Processing | Microsoft Docs
- ^ Sharing Message Loops Between Win32 and WPF | Microsoft Docs
- ^ Windows Forms and WPF interop input architecture | Microsoft Docs
- ^ X11R5、X11R6、Xtでの対処法は Chapter: 26 Signal Handling
- ^ The Main Event Loop - Customizing the main loop iteration Gnome Dev Center
- ^ Message | Android Developers
- ^ MessageQueue | Android Developers
- ^ Looper | Android Developers
- ^ Handler | Android Developers
- ^ core/java/android/os/Looper.java - platform/frameworks/base - Git at Google
- ^ Looper | Android NDK | Android Developers
- ^ サンプル: native-activity | Android NDK | Android Developers
- 1 イベントループとは
- 2 イベントループの概要
- 3 脚注
イベントループ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/26 09:48 UTC 版)
「イベント駆動型プログラミング」の記事における「イベントループ」の解説
イベントを待機するループを持つ機構。イベントループ内にイベントディスパッチャーを持つ構造が一般的である。メッセージループ、メッセージポンプとも呼ばれる。
※この「イベントループ」の解説は、「イベント駆動型プログラミング」の解説の一部です。
「イベントループ」を含む「イベント駆動型プログラミング」の記事については、「イベント駆動型プログラミング」の概要を参照ください。
- イベントループのページへのリンク