to wuyong(WY):
我并没有为了多线程而多线程,我的程序中有一个比较慢的网络数据读入过程(瓶颈不在CPU,在于网络速度),如果将这个过程放在UI线程(主线程)中的话,每当读取数据的时候,程序就好象死机失去响应了一样。我觉得我现在面临的问题好象就是需要用到多线程才能解决,你认为我的设计有问题的话,觉得应该怎么办才能解决?
to qqchen79(知秋一叶) :
这个就不好描述了,告诉我你的email?我把程序发给你帮我看看吧,是一个csdn的离线浏览器,能自动的下载网上的帖子并保存到数据库,并能根据帖子的位置自动选择读取方法,还计划能跟踪网上帖子的状态,如果有人回复能自动提醒。。。中间层的代码逻辑差不多已经构建完毕了,现在剩下界面这里比较麻烦,我想你会对此感兴趣的。
to qqchen79(知秋一叶) :
这种方法有个问题,前面没说明白,如果我是更新dataset的话,变化不会反映到datagrid,只有更新那个赋给datagrid数据源的dataview的时候(用addnew方法)才会将数据变化反映到datagrid。这时候我希望变化反映到datagrid,但是不希望快速刷新导致出错。如果采用您说的批量更新的方法,好象dataview不支持,只有dataset才支持批量更新(但是这个时候又不能将数据变化自动的反映到datagrid),想向dataview里添加数据的话,又只能用addnew一条一条的加 :(
to countryroad(罗宾):
datagrid的刷新是在主界面线程中,是系统自动刷新的,我只是在工作线程中刷新了一个dataview,而这个dataview就是datagrid的datasource(是在主线程中创建的),所以会引起datagrid的自动刷新。这时常常导致datagrid因为快速刷新而产生非法操作。