包含vb点虐 假死委托的词条
vb点虐 多线程,循环导致窗口界面假死的问题
同学。。你这里的写法其实根本没有用到多线程
为千阳等地区用户提供了全套网页设计制作服务,及千阳网站建设行业解决方案。主营业务为成都网站设计、成都网站制作、千阳网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
原因很简单
你是定义了一个T的新线程,但是很可惜你在BeginDoSub这个独立的线程中又定义了一个梁汪deSomeSub的委托,并且直接用Me.Invoke把橡耐仔实际的执行任务提交给界面主线程运行了
所以你的图片的处理函数实际上是在主线程中运行的,新线程等于没用
正确的作法是,T定义为SomeSub这个函数为入口的线程,亩竖并启动它
在界面进度条更改的时候再使用Invoke来调用委托来进行界面更改。
自己再好好看看吧,时间问题我要走了。
vb点虐 多线程调用另一窗口,假死现象,如何解决
感觉问灶配题出在
Form2.Show() '启动倒计时显示窗口
这一句上。
这一句应该只需要执行一次就行了。
把它放在timer中隐没指,多次调用,造成假察斗死。
vb点虐 线程托管 窗口假死
Me.Invoke(d, i)
问题出在这里!
直接用Me.Invoke把实际的执行任务提交给主线程运行
所以你的处誉旁理函数实际上是在主线程中运行的,新线程等于没用
正确的作法是,定义一个函数为入口的线程,并启动它
在需要调用的时候再使用Invoke来调用委托来进行更改。
----------------------------------------------------------------
方法已经给你说明白了,新建1个线程和2个线程来操作有什么不通用的哪??
问题不是线程个数的问猛散题,是你线程中的函数一直在调用settext和settext1两个函数,而这两个函数都是处于method 方枝虚氏法 的while的循环中,相当于不间歇的在使用 Me.Invoke(d, i)这个方法。
----------------------------------------------------------------
如果你要不停地通过另外一个线程修改richtextbox内的内容,那也可以新启动一个线程,由这个线程的入口方法创建一个richtextbox ,再由这个线程来对这个richtextbox 进行操作。当然,你也可以用不安全的线程间的操作方法来实现。
关于VB.NET中多线程和委托界面假死无响应的问题
Sub bc()
Dim cs As New qq163(AddressOf js)
Application.DoEvnts
Invoke(cs)
End Sub
本文标题:包含vb点虐 假死委托的词条
文章转载:http://pwwzsj.com/article/ddpiopj.html