
c# winform listView控件快速插入 30
项目用要大量的数据插入listView控件,主要还有别的线程更新同一界面的其他数据,有6个定时器,2个UITime用于更新界面数据,4个用于处理后台数据,插入listVi...
项目用要大量的数据插入listView控件,主要还有别的线程更新同一界面的其他数据,有6个定时器,2个UITime用于更新界面数据,4个用于处理后台数据,插入listView控件的数据量一大,就会很卡,请问有什么好方法或者算法解决这个问题吗?
谢谢!谢谢!
用轻量级的线程怎么样才能定时触发事件,或者是更新数据呢? 展开
谢谢!谢谢!
用轻量级的线程怎么样才能定时触发事件,或者是更新数据呢? 展开
2个回答
展开全部
建议不要使用定时器来搞这个,直接使用轻量级的多线程。
建立五个线程,一个用来更新页面,四个处理后台数据,主线程用作处理界面,这样就可以把你以前写在六个Timer里面的逻辑分拆到六个线程中。不过要注意控制线程的互斥,填充数据时需要为共享给填充UI线程使用的项目加锁。
新建线程并且启动的代码如下,RefreshUi2方法是一个private oid RefreshUi2()里面是更新页面的逻辑:
Thread th1 = new Thread(new ThreadStart(this.RefreshUi2));
th1.Start();
建立五个线程,一个用来更新页面,四个处理后台数据,主线程用作处理界面,这样就可以把你以前写在六个Timer里面的逻辑分拆到六个线程中。不过要注意控制线程的互斥,填充数据时需要为共享给填充UI线程使用的项目加锁。
新建线程并且启动的代码如下,RefreshUi2方法是一个private oid RefreshUi2()里面是更新页面的逻辑:
Thread th1 = new Thread(new ThreadStart(this.RefreshUi2));
th1.Start();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询