初始加载dgv,想用多线程方式

数据有2000左右,暂时不打算分页,想到子线程加载,就是网上很多的事例,new thread 委托+invoke,但是感觉加载还是有卡顿,有一点不太明白的地方就是控件不能夸线程使用,需利用委托交由主线程执行,那这样不是相当于没起到多线程该有的作用了吗,感觉不太明白,请指教,现在就是初始加载时主线程须加载别的控件赋值,使用子线程加载dgv数据,然后整个界面相当于是所有数据加载完成才一起显示出来

不会!线程还是有作用。线程把数据处理好,最后只是显示的时候把数据交给主线程显示,这样还是能提高性能的

你这个应用场景中多线程没意义。
控件不能多线程使用,所以只能单线程填充数据。
至于取数据,无论是本地读取(瓶颈是硬盘IO)还是网络读取(瓶颈是网络IO),多线程并不能提高IO速度。

tiger_zhao说得很好,你的问题我也碰到过,懒的话,就写这种取数据,setect top 100,少取几行。一般用户在用时会查询。最好分页,但winform分页实现麻烦了点。你的思路也很对的,方法自己再试一下,异步处理数据,参考一下FTP异步处理,关键在完成事件触发,触发时再进行数据绑定。