次の拡張メソッドがあります。
internal static string ReadLine(this DataReader stream)
{
Task<string> line = ReadLineAsync(stream);
// line.Wait(); - Not Required, as next call blocks
return line.Result;
}
これは基本的に、文字列を返す非同期メソッド呼び出しの同期メソッド呼び出しラッパーです。コードを 1 行ずつ実行すると問題なく動作しますが、自由に実行させると不定ブロックに遭遇するようです。何か案は?
私が投稿した以前の質問に関連する: How can I update my API to use the async keyword without using await for all caller