我开始学习线程并且遇到了问题。
我有一个计分系统,旨在将一个点添加到一个临时的 addedPoints 变量中,以向玩家显示他们最近获得了多少分。然后在大约 1 秒后,添加的分数应该被添加到玩家的分数中。
我的尝试如下所示:
public static void AddPoints(int points)
{
for (int i = 0; i < points; i++)
{
Thread addThread = new Thread(new ThreadStart(ThreadedPoint));
}
}
private static void ThreadedPoint()
{
addedPoints += 1;
Thread.Sleep(1000);
score += 1;
addedPoints -= 1;
}
这有两个问题。首先,它只允许我为每个线程添加 1 个点,这远非理想。其次,它实际上不起作用。addedPoints 和 score 都不会更新。我怎样才能解决这个问题?