問題タブ [begininvoke]
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# - 匿名デリゲートを使用した Dispatcher.Invoke は Silverlight では機能しますが、WPF では機能しません
Silverlight 4 には、非同期の Completed イベントを持つカスタム サービス クラスがあります。Completed イベント内で、返されたデータを取得し、次のような方法で populate メソッドを呼び出します。
SL4 で動作しますBeginInvokeが、WPF に移植すると、次のエラーが発生します。
デリゲート型ではないため、ラムダ式を「System.Delegate」型に変換できません
私はそれをインラインの匿名のパラメータ化されたデリゲートに変更しようとしました:
ただし、同じコンパイル時エラーが発生します。
これをWPFで動作させる方法はありますか? を使用するためのリファクタリングBackgroundWorkerは、私にとって選択肢ではありません。
c# - c# BeginInvoke 問題
データベースに対して多額の呼び出しを行い、UI を更新するプログラムがあります。ほとんどの場合、UI が応答しないことを意味するため、これが問題を引き起こしています。したがって、データベースにアクセスして UI を更新する関数呼び出しを別のスレッドに配置することにしたので、次のようになりました。
ただし、UI には何の違いもないようです。別のスレッドで実行されるコードが UI を更新する必要がある場合、これが呼び出しを行う方法であるとどこかで読みましたが、これは正しいですか? 私は何か間違ったことをしていますか?
c# - Delegate.BeginInvoke Delay
Delegate.BeginInvokeが呼び出されると、デリゲートメソッドの実行に1秒以上かかる場合があります。
遅延の理由は何でしょうか?この問題は、継続的に実行されるアプリケーションで1日に1〜2回発生します。
私を助けてください。
ありがとう!
c# - Delegate.BeginInvoke を介して InvokeRequired=False になるのはなぜですか?
この新しいスレッドはデリゲートを介して作成されているため、どのような理由で 内でthis.InvokeRequired等しいでしょうか?FalseInitUIState()
私の問題は、ラベルが設定されておらず、実行されていないことです。これは=this.BeginInvoke()という事実によるものだと思います。InvokeRequiredFalse
私はこのパターンを何度も使用していますが、何らかの理由で、今回は実行されていません :P (そしてInitUIState()、デリゲートから呼び出されるインスタンスは 1 つだけです)
みんなありがとう。
2 つの異なるスレッドを検証する画像:
http://imgur.com/mq12Wl&X5R7G
http://imgur.com/mq12W&X5R7Gl
フォローアップの質問:これはスレッドを作成するための好ましくない方法ですか? 私はいつもそれがとてもシンプルで軽量だと思っていました. おそらく私は使用する必要がthread.Start()あり、これらの問題を回避できますか?
wpf - 同じスレッドから呼び出されたWPFDispatcher.BeginInvokeに関する質問!なんで?
私はWPFに比較的慣れていません。私は次のようなコードを調べています:
コメントから、元のコードはUIの応答性を高めるためにこれが必要であると感じたと思いますが、私の理解では、Dispatcher.BeginInvokeはUIスレッドで何かを実行するだけです。buttn_ClickはすでにUIスレッド上にあるので、ポイントは何ですか?おそらく、私はDispatcherとBeginInvokeを誤解しています。この場合のDispatcherは、このメソッドが含まれるクラスであるMainWindow.xamlが所有するディスパッチャーであると想定しています。誰かが私を啓発できますか?
ありがとう
c# - コールバックにデータを渡すと、データは確実に受信されますか?
私の質問は:そのようなコードの一部を持っている(コールバック契約を介した通信)
とコールバック契約
途中でネットワークの問題が発生した場合でも、メッセージがすべてのクライアントに正常にブロードキャストされるという保証はありますか?つまり、クライアントが常に接続されていると仮定して、サービスは成功するまで何度もメッセージを自動的に配信しようとしますが、最初の配信中にいくつかの問題がありました。保証するために追加のコードを書く必要があるかどうかわからないので質問しています(サービスクライアント確認メッセージなど)app.configで信頼できるセッションを有効にしていますが、信頼できるセッションで問題は解決しますか?
よろしくお願いします
c# - 2 回目の BeginInvoke 呼び出しの要求は既に完了しています。なんで?
BeginInvoke で繰り返しメソッドを呼び出しています。各呼び出しの後、EndInvoke を呼び出します。
問題は、2 番目の呼び出しで、返された IAsyncResult の IsCompleted メンバーが、BeginInvoke 呼び出しの直後に true に設定されることです。
これにより、プログラムは 2 番目の呼び出しが完了したと見なすため、誤動作が発生します。
なぜこれを行うのですか?2番目の呼び出しが本当に完了したことをどのように検出できますか?
c# - なぜ誰もが(BeginInvoke()ではなく)Invoke()を使用したいのですか?
Invoke()は通常のメソッド呼び出しに似ていると言われました...では、なぜ人々は通常のメソッド呼び出しではなくInvokeを使用することを選択するのでしょうか。
この問題についてオンラインで検索しようとしましたが、BeginInvoke()を使用する利点は何ですか?Invoke()を使用する利点は何ですか?
c# - フォームがすでに閉じている場合の呼び出し時のエラー
SQLサーバーから照会されたグリッドにいくつかの情報を表示しようとしています。データ収集には約10秒かかることがあるので、UIスレッドをロックしたくありません。
私は現在次のようなコードを持っています:
これは、更新が完了する前にフォームが閉じられている場合を除いて、ほとんどの場合機能し、次のエラーでクラッシュします。
ウィンドウハンドルが作成されるまで、コントロールでInvokeまたはBeginInvokeを呼び出すことはできません。
フォームが存在しなくなったためにエラーが発生することを理解しています。そのため、finallyセクションがUIスレッドでメソッドを呼び出そうとすると、呼び出せなくなります。
このすべてを行うためのより良い方法はありますか?私は呼び出しエラーを処理できると思いますが、それは厄介に見え、おそらくもっと簡単な方法を逃したと思います。