通常,我需要执行昂贵的任务然后显示结果。所以我提出了一个主题。是否有比我目前使用的更少的代码或更好的方法呢?
示例:
ThreadStart job = new ThreadStart (delegate {
Search d = new Search ();
x = d.DoSomeWork();
InvokeOnMainThread (delegate {
ctl.Show (x);
});
});
- 在这里开始线程......
答案 0 :(得分:6)
您可以使用线程池并简化一些事情。
ThreadPool.QueueUserWorkItem(委托{/ * ... * /});
答案 1 :(得分:4)
正如Kevin所指出的,ThreadPool的使用稍微简单一些。
但是使用ThreadPool还有一个额外的好处:Mono将限制你启动的线程数,帮助你更好地保留设备上有限的资源。