2

我正在使用异步套接字操作,当客户端收到消息时,它会使用以下代码调用方法并执行 Methodinvoker:

private void AddText(string message)
        {
            MethodInvoker mi = new MethodInvoker(delegate
            {
                textBox1.Text += message;
            });
            this.Invoke(mi);
        }

我不明白为什么要使用methodinvoker。使用它而不是声明和调用没有参数的void方法更好吗?一定有充分的理由。

4

1 回答 1

1

显然,您的方法是从另一个线程调用的,然后是您的主线程。

调用

在拥有控件的基础窗口句柄的线程上执行指定的委托。

您应该始终与主线程上的用户控件进行交互。该Invoke方法将委托发送回应用程序的主线程。

于 2013-03-31T22:41:19.120 回答