关闭表格时关闭线程

时间:2015-06-27 17:40:53

标签: c# multithreading objectdisposedexception

我是第一次尝试使用c#。在我的应用程序中,创建了一个新的Fom来显示一些测量值。我在一个帖子中这样做。在表格关闭我将退出线程。有时会抛出ObjectDisposedException异常。我试图用互斥量来处理它。但后来我死了。

private void FormClosing(object sender, FormClosingEventArgs e)
{
    m_mutClosing.WaitOne();
    bDoWork = false;
    m_mutClosing.ReleaseMutex();
}


    public void DoWork()
    {
        while (bDoWork)
        {
            i++;

            m_mutClosing.WaitOne();
            this.Invoke((MethodInvoker)delegate()
            {
                if(textBox != null)
                    textBox.Text = i.ToString();
            });
            m_mutClosing.ReleaseMutex();

            Thread.Sleep(500);
        }

        MessageBox.Show("end thread");
    }

问题似乎是我尝试将值写入文本框,直到删除对象为止。

我在其他问题上没有看到解决方案,可以请某人解释一下吗?

0 个答案:

没有答案