BelhardTraining.ControlInvokeDeadlock.MainForm.bigButton_Click C# (CSharp) Метод

bigButton_Click() приватный Метод

private bigButton_Click ( object sender, EventArgs e ) : void
sender object
e EventArgs
Результат void
        private void bigButton_Click(object sender, EventArgs e)
        {
            Thread deadlockThread = new Thread(Deadlock);
            deadlockThread.Name = "Мой поток";
            deadlockThread.Start();

            statusLabel.Text = "Взаимоблокировка :(";

            // Ждем перехода события в сигнальное состояние
            // Это никогда не произойдет т.к. событие переводится в сигнальное состояние
            //	после вызова Control.Invoke который ждет когда UI поток освободится который
            //	ждет сигнала от второго потока который ждет UI поток который ....
            // То из-за неправильного взаимодействия потоков мы получили взаимоблокировку
            _unlocked.WaitOne();
        }