我用vb.net写了一个爬虫程序,但运行起来,点击所有按钮都没有反应,非得强制关闭,listview控件也得等到
listview控件非得等到程序运行完才填充数据,我想一边运行,一边填充数据,大侠们帮忙给出出主意。...
listview控件非得等到程序运行完才填充数据,
我想一边运行,一边填充数据,大侠们帮忙给出出主意。 展开
我想一边运行,一边填充数据,大侠们帮忙给出出主意。 展开
2个回答
展开全部
你想一边运行,一边填充数据,我给你出的主意是多线程,用另一个线程来Invoke数据,
Thread和线程Timer(不是Form中的Timer),要是同时访问一块数据注意用
SyncLock锁
Thread和线程Timer(不是Form中的Timer),要是同时访问一块数据注意用
SyncLock锁
追问
大侠,我学vb.net还是新手,你说的我听过,但是压根不会弄呀,麻烦大侠帮帮我,375021674
追答
1、定义线程Private tr1 As Threading.Thread
定义委托 Delegate Sub Dg(ByVal V As object)用来填充数据
2、初始化线程tr1 = New Threading.Thread(AddressOf TheTask1)
Task1是处理运算过程的,并且用来填充数据 ,例如:
Private Sub TheTask1()
Dim Dg1 = New Dg(AddressOf Calculate1)
Try
'-----------编写程序处理过程-------------
Dim NO1 AS INTEGER
NO1 = NO1 + 1
'-----------编写程序处理过程-------------
TextBox1.Invoke(Dg1, NO1) '填充数据
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End Sub
3、启动线程tr1.Start()
4、如果有多个线程可用线程锁,否则程序会崩溃掉
5、如果中途强制退出使用tr1.Abort()
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
八爪鱼采集器是一款功能全面、操作简单、适用范围广泛的互联网数据采集器。如果您需要采集数据,八爪鱼采集器可以为您提供智能识别和灵活的自定义采集规则设置,帮助您快速获取所需的数据。了解更多八爪鱼采集器的功能与合作案例,请前往官网了解更多详情
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询