問題タブ [waitforsingleobject]
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.
delphi - DirectShow プッシュ ソース フィルター FillBuffer() 呼び出し中にフィルター状態をロックする必要がありますか?
DSPACK コンポーネント ライブラリを使用して Delphi 6 で記述された DirectShow フィルタがあります。現在、FillBuffer() 呼び出しの先頭でその目的のために作成された同期 obj を使用してフィルター状態をロックし、最後に解放します ( try/finally コンストラクトのfinallyセクション内)。FillBuffer() 呼び出しは、データ生成タスクを満たすスレッドによって解放される WaitForSingleObject() 呼び出しを介して、新しいデータが送信されるのを待っている間にブロックされる可能性があるため、これは悪い考えですか? FillBuffer() 呼び出しが (比較的) 長時間ブロックされると、フィルターまたはフィルター グラフ全体に悪影響を及ぼす可能性があることを懸念しています。
asynchronous - ループでWaitForSingleObjectの代わりにWaitForMultipleObjectsを使用する利点は何ですか?
私は持っていvector<HANDLE>
ます。全部終わるのを待ちたいです。それらを配列にコピーしたくありません。ループWaitForMultpleObjects
で使用するのではなく、とにかくそうして使用することの利点は何ですか?WaitForSingleObject
ありがとう!
winapi - 「マシン スリープ」 + WaitForSingleObject + 有限タイムアウト
ここで奇妙な質問 -- しかし:
ミューテックスで WaitForSingleObject を 20 分のタイムアウトで使用するとします。次に、マシンは待機中にスリープ モード (または休止状態) に入ります....12 時間後にスリープ解除すると、WaitForSingleObject への呼び出しはタイムアウトになりますか? または、マシンがスリープ状態でタイマーが一時停止しますか?
c++ - 単一のオブジェクト関数の使用を待つ
WaitForSingleObject()
プログラムで待機を実装するために関数を使用しています。
この関数は、指定された時間、イベントが通知されるまで待機することは誰もが知っています。
しかし、この呼び出しに入る前にイベントがすでにシングル化されている場合はどうなるかを知りたいのですが、その時点で待機しますfail(WAIT_FAILED)
か? ちゃんと理由をつけて答えてください。このことをもう少し深く知りたい。
events - Win 8 Metro モード: WaitForSingleObjectEx に失敗しました
このようなメトロモードで Sleep(msec) 動作のようなものを実装しようとしています
それは出力します: WaitForSingleObjectEx, failed ...Err: WAIT_FAILED
: -->> 0 Windows のドキュメントにはGetLastError
メトロ モードもサポートされていると書かれていますが、システム エラー コードにはデスクトップ モードしかないと書かれています ... 変です! 0は意味しますSuccess
が、そうではありませんでした!誰でも少なくとも私を助けることができますGetLastError
..これは単純な実装であることを知っています.デスクトップモードでもこのようなことをしました..何が悪いのか疑問に思っています!
>>>>>>>>> 編集 <<<<<<<<
GetLastError についてはわかりませんがSleep
、
c++ - アプリケーション間のメッセージで WaitForSingleObject を繰り返す
Cで2つのプログラム(プロデューサーとコンシューマー)を作成し、メッセージを相互に送信します(CreateEvent、SetEvent、およびWaitForSingleObjectを使用)
各プログラムに 1 つのスレッドを実装して、メッセージを待機する WaitForSingleObject(myEvent, INFINITE) を使用してこのメッセージを管理します
WaitForSingleObject をループに入れて繰り返し、時間内に多くのメッセージを取得します。
これは最初は正常に機能しますが、それ以外の場合は WaitForSingleObject がメッセージを待機せず、左のコードが無限ループで実行されます (WaitForSingleObject を再度含む)。
2 つのプログラムの両方で CloseHandle(myEvent) を削除することをテストしましたが、結果はありませんでした
なにが問題ですか?ありがとう
c++ - プロセスAが生きている間だけプロセスBを実行する方法
別のプロセスBを開始するプロセスAがあります。
現在、プロセスBは、プロセス「A」によってシグナルが送信されるシグナル(WaitForSingleObject)を待機してから終了し、シグナルが設定されるとプロセスBが終了します。ただし、プロセスAが予期せず終了またはクラッシュすると、プロセスBが実行されたままになります。プロセスAがクラッシュした場合を除いて、Bに信号を無期限に待機させるにはどうすればよいですか?言い換えると、..プロセスBは、プロセスAが実行されるまでのみ存続する必要があります。ありがとう
winapi - timeSetEvent と SetWaitableTimer による WaitForSingleObject の解決
Win32 マルチメディア タイマーを使用して、多数の UDP パケットのディスパッチ間に遅延を設定していますが、結果として遅延が本来よりも大幅に長くなることがわかりました。Windows Miltimedia タイマーを使用してタイマーの解像度を上げた場合でも、最大 40 ミリ秒の遅延が 1000 ミリ秒近くになることがあります。以下は、私が使用したコードの簡略版です。
問題は、コールバックではなく、イベントによって通知されたときにWindows7がタイマーの解決を保証しなくなったことだと思いますが、後者を使用するのは嫌です。シングルスレッドのテストケースで高解像度と思われるタイマーでさえ、なぜそれほど不正確なのか知っている人はいますか?
c++ - WaitForSingleObject が返されるまでの経過時間
WaitForSingleObject 関数を呼び出してから返されるまでの経過時間を知る方法はありますか?
または、知る唯一の方法は、ある種のタイマーを使用することですか?
winapi - この同期が機能しないのはなぜですか?
私はこのコードを持っています:
2 つの関数 (GenerateNumbers
とDisplayNumbers
) を交互に呼び出したい。ただし、起動時にGenerateNumbers
が 2 回呼び出された後、待機するだけです。DisplayNumbers
メソッドが呼び出されることはありません。誰かがこのデッドロックの原因を説明できますか?