标签: .net winforms multithreading
可能重复: .NET Controls: Why aren’t all calls thread-safe?
这个问题不是关于什么是跨线程操作,以及如何避免它,而是为什么.NET框架的内部机制不允许跨线程操作。
我无法理解为什么SerialPort DataReceived事件无法更新表单上的简单文本框以及为什么使用代理这可能?
答案 0 :(得分:2)
.NET允许跨线程操作。但你应该安全地处理它。使用Invoke / BeginInvoke方法进行跨线程操作。调用意味着“嘿,文本框!如果你有时间,请更新自己。”以下是使用on MSDN
Invoke
BeginInvoke