简单线程问题,请大家帮帮忙,为什么数据不出来
源程序如下:
a()
{
b();
}
b()
{
Thread thread=new Thread(new ThreadStart(c);
thread.IsBackground = true;
thread.Start();
}
c()
{
//数据显示,listview
}
------解决方案--------------------我上边说的 "用Invoke或BeginInvoke去同步到那个线程上 "可以这样做:
private delegate void DisplayListviewDelegate();
//你的c()函数需要这样写:
private void c()
{
if (myListview.InvokeRequired)
myListview.Invoke(new DisplayListviewDelegate(DoDisplayJob));
else
DoDisplayJob();
}
private void DoDisplayJob()
{
//myListview 中显示数据
}
------解决方案--------------------楼上正解....和其它语言中的多线程应用差不多,