private const int Total = 500000;
private static volatile int _count = 0;
private static void Main()
{
Task task = Task.Factory.StartNew(Decrement);
for (int i = 0; i < Total; i++)
{
_count++;
}
task.Wait();
Console.WriteLine(_count);
Console.ReadLine();
}
private static void Decrement()
{
for (int i = 0; i < Total; i++)
{
_count--;
}
}
結果が0の場合もあれば、-xxxxxxの場合もあります。どうしてか分かりません。誰かがそれを説明し、正しい使用法を教えてもらえますか?