私はユーザー応答クラスを構築するいくつかの関数を持っていますが、まだTASK非同期待機を把握しています。複数の呼び出しを同時に実行する方法
以下のコードから、一度に1つずつではなくすべてをすべて並列で実行する方法がありますか?
私の最初の質問は、今のところどのように設定されているのでしょうか?
私の2番目の質問は、これらの呼び出しをすべて並行して実行する方法です。リターンがどのようにコールが行われ、それが今に設定されている方法を取っている任意の特定の順序
public static async Task<ProjectForDrawings> GetProjectInfo(string cnn, int projectID)
{
return await Task.Run(() =>
{
ProjectForDrawings projectForDrawings = DataBase.proc_GetProject_ForDrawings.ToRecord<ProjectForDrawings>(cnn, projectID);
projectForDrawings.Submittals = DataBase.proc_GetSubmittal.ToList(cnn, projectID);
projectForDrawings.ProjectLeafs = DataBase.proc_GetProjectLeafs.ToList<ProjectLeaf>(cnn, projectID);
projectForDrawings.Revisions = DataBase.proc_GetRevisionsForProject.ToList<Revisions>(cnn, projectID);
return projectForDrawings;
});
}
ありがとうございます。 –
この記事では、SQL Serverの2005年以降には接続プールがあり、呼び出し元が同じ接続上でdbを呼び出した場合、使用可能な接続の1つを取得して使用すると述べています。開いている接続がない場合は、呼び出し元に選択可能な一連の使用可能な接続がスローされます。これはここではゆるやかな話ですが、これを正しく理解していますか? –
@ AlumCloud.Com:これは 'DataBase'メソッドの実装方法によって異なります。彼らがすべて独立した 'DbConnection'を使っているなら、それはうまくいくはずです。それらがすべて同じ 'DbConnection'インスタンスを使用している場合は、例外が表示されます。 –