問題タブ [async-ctp]
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# - タスクでブロック?
私は次のようにアプリケーションでタスクを使用しようとしています:
この呼び出しを行うのは UI スレッドであり、ワーカー スレッドがサービスから戻るまでブロックする必要がありますが、UI をフリーズさせたくありません。
ContinueWith を使用することもできますが、これによりログイン方法が分割され、従うのが難しくなります。このメソッドの残りのコードを実行するには、メインの UI スレッドも必要です。
これを解決するにはどうすればよいですか?
.net - EF4、TransactionScope、および Task<>
を開き、 EF4 で動作するTransactionScope
async のロードを実行してから、結果をコミットすることは可能ですか?Task
ObjectContext
現在のトランザクション スコープは EF4 でどのように推測されますか? タスクがトランザクションスコープとは異なるスレッドでスケジュールされた場合、これは失敗しますか?
c# - 非同期メソッドは、最初の「待機」の前に高価なコードを持つことができますか?
await
最初のメソッドが呼び出される前に、非同期メソッドの開始時に高価なコードを使用するのは悪いことですか? TaskEx.Run
このコードは代わりに a でラップする必要がありますか?
c# - async Task.Run with MVVM
新しい非同期 CTP および MVVM パターンをいじっています。バックグラウンド ワーカーを使用して進行状況を報告し、モデルのコレクションを更新していた私の古いプログラムを変換しています。私はそれをそのようなものに変換しました
私のビューでは、この監視可能なコレクションを公開するビューモデルにバインドします。ただし、コレクションが更新されると、次の例外が発生します
このタイプの CollectionView は、Dispatcher スレッドとは異なるスレッドからの SourceCollection への変更をサポートしていません。
このようにすると、UI スレッドに戻る正しい方法がわかりません。
c# - 逆シリアル化と非同期/待機
私のアプリ (Windows 8 Metro) では、いくつかのオブジェクトをローカル フォルダーにシリアル化された形式で保存します。読み返す方法は次のとおりです (以下を参照)。
このメソッドを Task.Run で呼び出すと、次のオブジェクトを取得できます。
しかし、await キーワードを使用すると機能しません。メソッドの行 A (ReadObject) でスレッドが停止し、エラーや例外なしで終了します。
推奨されているように、 await / async を使用しないのでしょうか。
方法
c# - 非同期 Web リクエストをキャンセルしますか?
Windows Phone 用の Async CTP ライブラリを使用しています。保留中の Web リクエストをキャンセルする方法を知っている人はいますか?
キャンセル トークンはありません ( ASYNC Ctp タップ ドキュメントで指定されているとおり)。
windows-phone-7 - foreach C# 5.0 Async 内で Windows Phone 7 が待機する
C# async CTP を使用して、URI を返すいくつかのリモート関数を呼び出しています。次のコードがあります。
foreach 内に await があるので、このメソッドは最初の await で返されるはずですが、デバッグによって、コードが await に到達すると「結果を返す」にジャンプすることに気付きました。
私は以前に(Windows Phoneではなく)async ctpを使用し、これに似たコードを実行しました。
それの何が悪いのですか?
編集: リモート呼び出しが行われないため、これはデバッガーのエラー/バグではありません (私はそこにログインしています)。
c# - Microsoft Async Framework の使用の基本
Visual Studio Async CTP (バージョン 3) を使用して、このフレームワークを使用して既存のコードを「ラップ」する方法を理解するのに苦労しています。
例えば
OpenPop.NET ライブラリを使用して、pop3 サーバーとの接続を確立し、有効なユーザー名とパスワードを持っていることを確認しようとしています。
したがって、このようなコードがあるとしましょう。
そして今、私はそれを非同期にしたいと思います。私が読んでいてつなぎ合わせたものからの私の理解は、
これはブール値 (?) を返すタスクになるため、これは正しい署名であると思いますが、TaskEx.Run() メソッドを使用する必要があると思いますか? しかし、それは私が理解できる限りです。誰かが正しい方向を指すことができますか?
c# - Visual Studio 11 CTP3のバグ?
Visual Studio 11プレビューのバグ?
次の例をコンパイルしようとしましたが、予期しないコンパイルエラーが発生しました。
例1:
例2:
c# - TaskEx.Yield(TaskScheduler)
先月、私は次の質問をしました。その結果、次のことを学びましたTaskEx.Yield
。
非同期メソッドは、最初の「待機」の前に高価なコードを持つことができますか?
ただし、このメソッドが実際には後続のすべてのコードをアンビエントに送信することに気付きましたTaskScheduler
。真の DI 精神で、私たちのチームは可能な限りアンビエント インスタンスの使用を避けることに同意しましたTaskScheduler
。
次のようなものは素晴らしいでしょう:
ただし、Async CTP の現在の実装では、次のものしか提供されません。
以下は、許容できる効率的な代替手段を提供しますか?