2017-05-02 16 views
0

IOバインド操作について少し混乱しています。C#IOバインド操作

基本的に、IOバインド操作のベストプラクティスは見つかりません。

たとえば、リモートサーバーに送信する必要があるリクエストがたくさんあります。 私は投稿データを送信し、応答を確認してその応答をログに記録するのを待つ必要があります。

質問は何を使用すべきですか?

私はそれを取るバックグラウンドスレッドを作成する必要がありますか?

これらのリクエストがすべて完了している間、私は同期して待機したくないためです。そして、部分的に、私はそれらを気にしないので、彼らは単にいくつかのログですなど

+0

を使用することができます。 –

+1

非同期を望むなら 'await/async'を使います。バックグラウンドスレッドを作成すると、別のスレッドをブロックするだけの同期呼び出しが行われます。 – juharr

+1

スレッドを使用すると、非同期コードを記述する必要がないため、コードが簡単になります。特にこの質問をしなければならないときには、特にシンプルなコードでは間違ったことはありません。 *最適な*コードを書こうとするならば、I/Oが完了するのを待っているスレッドを持っていません。ただし、I/Oが完了して応答を処理するときにのみ使用します。通常は苦痛なBeginXxx()メソッド、あまり苦労しないasync/awaitキーワードをとります。 –

答えて

1

あなたは、あなたのプロジェクトでタスクを使用することができますasync and await
...