タスク/マルチスレッドを使用してデータをロードし、UIを表示します

犬さん

だから私はマルチスレッドで遊んでいます。ファイルからデータをロードしているときにポップアップするのにしばらく時間がかかる特定のフォームがあります。私のアイデアは、バックグラウンドでデータをロードすることでしたが、それでもフォームを表示し、追加のデータがロードされていることを示すメッセージをフォームに表示します。

スレッドが完了したことを通知する方法がわからず、データを辞書として渡す準備ができていることを除いて、すべて完了しました。

これは私が得た限りです:P

Dim t1 As Task(Of Dictionary(Of String, Double()))

Private Sub cbchannels_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbchannels.SelectedIndexChanged
    t1 = Task(Of Dictionary(Of String, Double())).Factory.StartNew(Function() Load_Data())
End Sub

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    If t1.IsCompleted Then
        data = t1.Result
    End If
End Sub

タスクには、完了したかどうかを確認して結果を取得する機能があることを知っています

 t1.IsCompleted
 t1.Result

タスクが唯一の方法で完了したかどうかを継続的にチェックするためにタイマーを使用していますか?そして、私がしていることは理にかなっていますか?BackgroundWorkerを使用したくありません。

usr

そのタイマーはとても賢いです。幸いなことに、直接通知を受けることでした。そのタスクが完了したときに呼び出されるコールバックを登録するためContinueWithにanyTask呼び出すことができますこれは尋ねられたようにあなたの質問に答えます。

代わりに、非同期を調べて待つ必要があります。UIアプリでのバックグラウンド作業の実行は、C#5ではるかに簡単になりました。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

マルチスレッドを使用してファイルからデータをロードする

分類Dev

マルチスレッドを使用してiOSにデータを保存する

分類Dev

パンダ、マルチインデックスデータフレームでサブセットを使用して値をドロップする方法は?

分類Dev

マルチスレッドを使用してデータをフェッチするのは安全ですか?

分類Dev

マルチレベルインデックスを使用してPandasデータフレームでグループ化とローリングウィンドウを実行すると、インデックスエントリが重複します

分類Dev

マルチスレッドを使用してmysqlでデータをフェッチする方法

分類Dev

ルートガードを使用する前にアクションをディスパッチして、ngrx効果でデータをロードします

分類Dev

マルチスレッドC#を使用して、シリアルポートを介してLOG画面にデータを読み書きします。

分類Dev

タスクまたはスレッドを使用して、ビッグデータテーブル(Progressデータベース)からデータグリッドを行ごとに更新しますが、更新中はUIの応答性を維持します

分類Dev

マルチスレッドを使用したC ++のマンデルブロ画像ジェネレーターは画像の半分を「上書き(?)」します

分類Dev

クラスメソッドを介してグローバルデータフレームを更新します

分類Dev

またはを使用してマルチアレイデータを表示するブレード

分類Dev

Googleマップを使用してgeojsonデータマーカーのスタイルが設定されるまでロード画面を表示する

分類Dev

マルチインデックス列ヘッダーを使用してデータフレームの形状をワイドからロングに変更

分類Dev

MYSQLデータベースに画像をアップロードし、PHPとSwiftを使用して表示します

分類Dev

MySQLデータベースのレコードを値として使用して、チェックボックスのリストを作成します

分類Dev

メルト、スタック、マルチインデックスを使用してデータフレームを再形成しますか?

分類Dev

PHPを使用してMySQLデータベースからレコードをフェッチし、ドロップダウンリストに入力します

分類Dev

PLINQ AsParallel()でスレッドローカルデータを使用しますか?

分類Dev

マルチスレッドを使用したPythonデコレータ

分類Dev

Reduxアクションをディスパッチし、後続のアクションをペイロードとして送信して、マテリアルUIのスナックバーまたはダイアログを表示します

分類Dev

フレックスまたはグリッドを使用してループデータを3行で表示するCSS /テールウィンド

分類Dev

スクロールしてフッターを表示します

分類Dev

JAVAコンパレータがエラーをスローします(マルチスレッド実行)

分類Dev

MySQLは、フィールドプレフィックス基準を使用してデータファイルをロードします

分類Dev

Pythonマルチスレッドは、別のスレッドのスレッドからのデータを使用します

分類Dev

マルチスレッドモジュールを使用してAPIデータをデータフレームに取得する

分類Dev

分割統治マルチスレッドを使用して、ボトルネックの出力/エンドポイントを介して巨大なデータセットをフェッチします。C#

分類Dev

SQLを使用してデータベースから特定のレコードをフェッチします

Related 関連記事

  1. 1

    マルチスレッドを使用してファイルからデータをロードする

  2. 2

    マルチスレッドを使用してiOSにデータを保存する

  3. 3

    パンダ、マルチインデックスデータフレームでサブセットを使用して値をドロップする方法は?

  4. 4

    マルチスレッドを使用してデータをフェッチするのは安全ですか?

  5. 5

    マルチレベルインデックスを使用してPandasデータフレームでグループ化とローリングウィンドウを実行すると、インデックスエントリが重複します

  6. 6

    マルチスレッドを使用してmysqlでデータをフェッチする方法

  7. 7

    ルートガードを使用する前にアクションをディスパッチして、ngrx効果でデータをロードします

  8. 8

    マルチスレッドC#を使用して、シリアルポートを介してLOG画面にデータを読み書きします。

  9. 9

    タスクまたはスレッドを使用して、ビッグデータテーブル(Progressデータベース)からデータグリッドを行ごとに更新しますが、更新中はUIの応答性を維持します

  10. 10

    マルチスレッドを使用したC ++のマンデルブロ画像ジェネレーターは画像の半分を「上書き(?)」します

  11. 11

    クラスメソッドを介してグローバルデータフレームを更新します

  12. 12

    またはを使用してマルチアレイデータを表示するブレード

  13. 13

    Googleマップを使用してgeojsonデータマーカーのスタイルが設定されるまでロード画面を表示する

  14. 14

    マルチインデックス列ヘッダーを使用してデータフレームの形状をワイドからロングに変更

  15. 15

    MYSQLデータベースに画像をアップロードし、PHPとSwiftを使用して表示します

  16. 16

    MySQLデータベースのレコードを値として使用して、チェックボックスのリストを作成します

  17. 17

    メルト、スタック、マルチインデックスを使用してデータフレームを再形成しますか?

  18. 18

    PHPを使用してMySQLデータベースからレコードをフェッチし、ドロップダウンリストに入力します

  19. 19

    PLINQ AsParallel()でスレッドローカルデータを使用しますか?

  20. 20

    マルチスレッドを使用したPythonデコレータ

  21. 21

    Reduxアクションをディスパッチし、後続のアクションをペイロードとして送信して、マテリアルUIのスナックバーまたはダイアログを表示します

  22. 22

    フレックスまたはグリッドを使用してループデータを3行で表示するCSS /テールウィンド

  23. 23

    スクロールしてフッターを表示します

  24. 24

    JAVAコンパレータがエラーをスローします(マルチスレッド実行)

  25. 25

    MySQLは、フィールドプレフィックス基準を使用してデータファイルをロードします

  26. 26

    Pythonマルチスレッドは、別のスレッドのスレッドからのデータを使用します

  27. 27

    マルチスレッドモジュールを使用してAPIデータをデータフレームに取得する

  28. 28

    分割統治マルチスレッドを使用して、ボトルネックの出力/エンドポイントを介して巨大なデータセットをフェッチします。C#

  29. 29

    SQLを使用してデータベースから特定のレコードをフェッチします

ホットタグ

アーカイブ