作者ONLYSMART ()
看板C_Sharp
标题[问题] 有关多执行绪
时间Mon Apr 23 15:05:54 2012
小弟目前有一个专案,是一次开四个执行绪分别去做事
在流程中会分别去更新,同一个dataGridView自己所属那行的讯息(也就是一共四行)
问题来了,执行一段时间後,介面会当掉
也就是介面会停止不动,但去工作管理员看,发现程式还是继续在执行
实际上也有去改DB跟做事(都正确无误),只是介面会呆在那里不动(没有更新讯息)。
因为程式码有点繁杂,小弟也不知道该贴那段出来
想请知道的大大给个方向,让小弟研究下!
以上感谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.11.164
1F:→ rainbow001:不知道能不能加个application.doevent()? 04/23 15:21
2F:→ funnyface325:UI也算一个thread,所以你不能跨thread更新UI~ 04/23 16:11
3F:→ funnyface325:你可以考虑 Dispatcher.BeginInvoke 或 BackGroundwo 04/23 16:12
4F:→ funnyface325:backgroundworker来更新你的UI 04/23 16:13
感谢以上二位大大回答
目前是以this.Invoke来更新dataGridView讯息.
※ 编辑: ONLYSMART 来自: 114.32.11.164 (04/23 16:29)
5F:→ yeo1987:更新太快, 间隔太短了? 思考一下是不是有必要这样做... 04/23 17:15
感谢y大
确实是更新的很快,间隔时间较短,所以这个错误是dataGridView来不及反应造成的吗?
※ 编辑: ONLYSMART 来自: 114.32.11.164 (04/23 17:27)
6F:→ yeo1987:就像你所说的, 但这也不能算是错误啦XD 04/23 17:42
7F:→ yeo1987:我会建议你另开一个thread去做定期更新各资讯的动作 04/23 17:42
8F:→ yeo1987:更新的间隔就要看你自已测试了! 04/23 17:43