Я запускаю поток, когда нажимаю на кнопку запуска, которая запускает таймер задержки, а затем показывает диалог MessageBox.
Сейчас я пытаюсь остановить этот поток, но я не могу найти для этого пути, кроме как добавить флаг, который будет препятствовать тому, чтобы поток отображал диалоговое окно messageBox, но не убивал поток.
Буду признателен, если вы можете предложить способ убить поток.
Спасибо
Моти
public partial class Form1 : Form
{
public delegate void example();
ThreadA threadA = null;
public Form1()
{
InitializeComponent();
}
example ex;
IAsyncResult result;
private void button_Start_Click(object sender, EventArgs e)
{
ex = new example(start);//.BeginInvoke(null, null);
result = ex.BeginInvoke(null, null);
}
private void button_Stop_Click(object sender, EventArgs e)
{
if (threadA != null)
threadA = null;
}
private void start()
{
if (threadA == null)
{
threadA = new ThreadA();
threadA.run();
}
}
}
class ThreadA
{
//public event
public Boolean flag = false;
public void run()
{
Thread.Sleep(15000);
MessageBox.Show("Ended");
}
}