专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Perl/Python

wxpython 界面启动时需大量运算,界面假死,怎么处理

发布时间:2011-06-29 20:10:25 文章来源:www.iduyao.cn 采编人员:星星草
wxpython 界面启动时需大量运算,界面假死,怎么办
将运算放在一个函数里
用thread.start_new_thread(self.Init,())
这样反而更糟,好像发生死锁一样 界面无休止假死下去

如果顺序执行self.Init(),只看到进度条(我将运算放在dll中,在dll中发送主窗口进度条消息),有些地方是白的

我的self.Init()是放在在主窗口的__init__() 中,self.Show(True)之后

感觉是主窗口尚未显示完 运算就开始了,结果导致界面瘫痪


------解决方案--------------------
用线程是对的,你应该把精力放在解决资源保护上。
------解决方案--------------------
肯定需要多线程,lz不妨把代码贴出来看看
------解决方案--------------------
那应该是计算量太大了

每计算一段时间让计算线程sleep一下,看看会不会好一些
------解决方案--------------------
我记得在demo中有个例子是callafter的,我做过,不是加载dll,也比较耗时3-4分钟(多线程).但没有lz那么夸张的要假死.
这个demo就是先生成图形再加载内容100X17个textctrl,同时我也在编辑textctrl的内容,比较卡而已。所以等加载完毕就流畅了.
------解决方案--------------------
可能会误解,demo是先生成图形再加载内容.
我做的是加载100x17个的内容填充.
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: