Task Parallel Library を使用して、セルごとにマトリックスを構築しようとしています。
これを行う次のコードがあります。
List<Campaign> campaigns = GetHomeCampaigns();
Dictionary<int, string> sellers = GetHomeSellers();
int numTasks = campaigns.Count*sellers.Count;
Task<MatrixCell<string>>[] statusTasks = new Task<MatrixCell<string>>[numTasks];
int count = 0;
for(int i = 0; i < campaigns.Count -1;i++)
{
for(int j = 0; j < sellers.Count -1;j++)
{
Func<MatrixCell<string>> getStatus = () => GetStatus(campaigns[i].CampaignID, sellers.ElementAt(j).Key);
statusTasks[count] = Task.Factory.StartNew(getStatus);
count++;
}
}
Task.WaitAll(statusTasks);
私がやろうとしているのは、各セルを並行して処理して決定し、それらがすべて完了したら、この例に関係のない追加のコードを使用して行ごとにマトリックスを組み立てることです。
私が今直面している問題は、次の行です
Task.WaitAll(statusTasks)
次の ArgumentException を取得しています
The tasks array included at least one null element.
Parameter name: tasks
配列を確認したところ、すべての項目が statusTasks に存在することが示されています。
他にどこを見るべきかよくわかりません。
ありがとう、