I understand that different threads change the same variable, and there must be an Exception
public partial class MainWindow : Window { Int64 i = 0; Int64 j = 1; private void Test() { while (true) { j = -j; i += j; } } public MainWindow() { InitializeComponent(); for (int n = 0; n < 4; ++n) { Thread t = new Thread(() => Test()); t.Priority = ThreadPriority.Normal; t.Start(); } } }