如下代码:
foreach (var c in dic_tcpClient)
{
taskSendArray[j] = new Task(() =>
{
var stream = c.Value.GetStream();
if (dic_writebytes.Count > 0 && dic_writebytes[c.Key] != null)
{
stream.Flush();
stream.Write(dic_writebytes[c.Key], 0, dic_writebytes[c.Key].Count());
}
});
taskSendArray[j++].Start();
}
在此过程中,taskSendArray[j]中的实例
是在任务调度开始后才进入代码实例,故多个任务实际是最后一个任务执行了多次
及taskSendArray[0]=taskSendArray[1]=taskSendArray[N];其中的stream为最后一次遍历的C;
时间: 2024-10-16 20:51:17