读书人

简单线程有关问题请大家帮帮忙为什

发布时间: 2012-01-30 21:15:58 作者: rapoo

简单线程问题,请大家帮帮忙,为什么数据不出来
源程序如下:
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 中显示数据
}
[解决办法]
楼上正解....和其它语言中的多线程应用差不多,

读书人网 >C#

热点推荐