invokerequired的出现的目的是安全的使用线程
每当一个创建本线程外的函数或者方法要调用该进程,则invokerequired的值为true
本进程中的任意方法调用,则invokerequired的值为false
可以这样理解,有人想找你借钱,他可以直接在你的钱包
中拿,这样太不安全,因此必须让别人先要告诉你,你再从自己的钱包把钱拿出来借给别人,这样就安全了
常用的书写方式
private
void
WriteInfo(
string
text)
{
if
(
this
.richTextBox1.InvokeRequired)
{
OutPutText
delegate1 =
new
OutPutText
(WriteInfoExcut);
Invoke(delegate1,
new
object
[] { text });
}
else
{
//
递归(方法自己调用自己,直到
InvokeRequired
等于
false
)
WriteInfo(text);
}
}
在使用wcf程序时候出现
出错原因:在服务器和客户端绑定基本通信类型的时候不一致
解决方法:保持一致就可以了,常用
BasicHttpBinding数据类型。