問題タブ [event-loop]
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.
qt - Qtラジオボタンスイッチの表示遅延
ここにQtアプリケーションがあり、5つのQPushButtonが垂直に配置されたメインウィンドウがあります。これらのボタンは、ラジオグループ方式で機能します。これは、それらがチェック可能で自動排他的であることを意味します。メインウィンドウのサイズが変更されたときにボタンテキストのフォントサイズを変更できるようにする必要があるため、QPushButtonの独自のオーバーライドを含め、デザイナーでカスタムウィジェットとして設定しました。
私が理解していないのは、キーボードショートカットを使用して1つのボタンから別のボタンに切り替えると、大幅な遅延が発生することです。マウスでクリックしたときも同じです。この遅延は約0.5〜1秒だと思います。別のマシンで試してみました。
私は本当にこれを取り除く必要があります!
誰かがこれを修正するために私が何ができるかについての考えを持っていますか?
編集:通常のQPushButtonを使用した場合でも、この動作は同じであることがわかりました。ボタンが大きくなると、遅延が大きくなるようです。どんな助けでも大歓迎です!!!
jquery - ajax呼び出しのアラート戻り値
(1. 呼び出すことができるグローバル jQuery ajax 'helper' があると便利だと思いますajax(url,data,async)
か?)
GET を配置して成功応答を返す関数を呼び出している場合。
私がそうalert(get_ajax())
すると、「未定義」のアラートが表示されます..戻り値があったとしても
イベントループの問題が見られますが、私async:false
は ajax 呼び出しにいます。考え?
user-interface - Application.DoEvents は別のスレッドにメッセージを送信していますか?
私は一般的にイベント ループ (あまりうまくいかない) を理解しようとしてきましたが、Windows メッセージング ループはシングル スレッドであることを読みました。もしそうなら、Application.DoEvents はどのように機能しますか? イベント ループは一度に 1 つのメッセージを処理し、各メッセージ/イベントの処理中にブロックしませんか? Application.DoEvents を可能にするには、メッセージを処理しているスレッドとは別のスレッドにメッセージ イベント ループが存在する必要があるのではないでしょうか。別々のスレッドがある場合、「メイン」スレッドと呼んでいるのはどれですか? 非常に単純なものが欠けていると確信しています。それが何であるかわかりません。
c++ - WndProcなしでwin32イベントループを実行する別の方法について考えていますか?
マルチスレッド、コールバック、win32 api関数、およびその他の厄介な問題をいじりながら、アイデアイベントを受け取りました。(へへへ)
グローバル(またはクラスを設計するときに静的)コールバック関数を定義する代わりに、ウィンドウクラスを登録するときに割り当てDefWindowProc
てからlpfnWndProc
、イベントループ全体を別のスレッドで実行した場合はどうなりますか?
このように、クラスにコールバックを実装するthis
ときに問題をハックする必要はなく
、メインスレッドの実行が続行され、神に見捨てられたwhileループから解放され、別のウィンドウを開くこともできます(イェーイ!)
「通常の」方法:
私の新しく見つけた素晴らしい方法:
皆さんはどう思いますか?
c - 複数のメインループを実行することは可能ですか?
libfuseとglibイベントインターフェイスの両方を使用していますが、複数のメインループ(glibg_main_loop_run
とfuse_loop_mt
)を同時に実行する必要があるという問題が発生しました。
私はすでに、セカンダリコンテキストでglibのイベントループの分離スレッドを作成しようとしました。例:
ただし、glibイベントループは、発生したイベントを検出しません。私はここで完全にオフベースですか?複数のメインループに取り組む適切な方法は何ですか?
java - Javaイベントループライブラリの提案
JavaScriptのようなものを探していますsetTimeout
がRunnable
、次の制限があります。
- タイムアウトごとに個別の専用スレッドは必要ありません。
- すでに開発され、考え抜かれています。
- たぶん、追加機能も含まれています。(タイムアウトをキャンセルしますか?、何かを待ちますか?、非同期I / O?)
- GUIライブラリは必要ありません。(Java FX / Swing / AWTにはすべてイベントループが組み込まれています)
何か提案はありますか?
編集:私は私が探しているものを見つけました。プラスは、ノンブロッキングまたは非同期I/Oのいずれかに関連するものも含むライブラリがある場合です。
tcl - vwait の各繰り返しの後に、指定されたスクリプトを永遠に評価するにはどうすればよいですか?
vwait forever
コマンドまでイベントループを実行しますexit
。
イベント ループの反復ごとに、やるべきことがいくつかあります。どうやってやるの?
qt - Qt: イベント ループの開始時に通知はありますか?
この種の main() を使用した Qt アプリケーションがあります...
mainWin が mainWin との通信をいつ開始できるかを知る必要がある前に作成されるこの別のスレッド。しかし、mainWin は Qt シグナル、スロット、タイマーなどを使用するため、(exec() を介して) イベント ループが実行されるまで、本当にロックする準備ができているわけではありません。
私の質問は: イベント ループが開始されたときに発行される信号またはイベントはありますか?
このことを考慮。mainWin.Init() では、QTimer のようなものを作成し、.start() を呼び出して開始することもできます。ただし、 exec() が呼び出されるまで、実際には実行されず、イベントがトリガーされません。これが、イベント ループがいつ実際に開始されたかを知る必要がある理由です。
qt - QTの文書化されていないProcessEventsFlag列挙型
QTのモーダルダイアログは、ProcessEventFlagsが「DialogExec」に設定されたローカルQEventLoopを使用していることに気付きました。
QTアシスタントには、この列挙型の意味に関する情報がありません。EventLoopExecと呼ばれる別のものがあります。誰もがそれらが実際に何を意味するのか、そしてなぜそれらが文書化されていないのかを知っていますか?
ありがとう