110,578
社区成员
发帖
与我相关
我的任务
分享
public class Test
{
public int volume { set; get; }
public string name { set; get; }
}
class Program
{
private static object lockObj = new object();
static void Main(string[] args)
{
List<Test> list = new List<Test>();
for (int i = 0; i < 5; i++)
{
Test data = new Test();
data.name = i.ToString();
list.Add(data);
}
foreach (Test item in list)
{
Test data=item;
//for (int i = 0; i < list.Count; i++)
//{
// Test data;
//lock (lockObj)
//{
// data = list[i];
//}
new Thread(() =>
{
for (int j = 0; j < 2000; j++)
{
data.volume++;
}
}).Start();
}
int total = 0;
foreach (Test item in list)
{
total += item.volume;
Console.WriteLine(item.name + "--" + item.volume);
}
Console.WriteLine("总数:" + total.ToString());
return;
}
foreach(var s in salesmen)
{
var c=s;
然后在线程中引用c而不是s!
}