【发布时间】:2011-12-06 18:08:05
【问题描述】:
这样写代码安全吗?
var form = new Form();
Action callback =
() =>
{
// do something 1
};
ThreadPool.QueueUserWorkItem(
args =>
{
// do something 2
form.BeginInvoke(callback);
});
UPD 我担心访问“表单”变量的安全性。我从后台线程使用 BeginInvoke 方法;我可以确定在此之前不会有任何读/写重新排序吗? (从后台线程的角度来看,这可能会使“表单”变量处于不一致的状态)
【问题讨论】:
标签: c# .net multithreading thread-safety clr