以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于类似多线程(报表查询等待方面)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91243)

--  作者:zhengboxin
--  发布时间:2016/10/5 9:43:00
--  [求助]关于类似多线程(报表查询等待方面)

某些综合性报表,涉及到的运算比较复杂,以致要等待不少时间。群里有分享多线程的案例,我仔细看了这个好像是针对同一个按钮,不知道理解对不对,就是我这个按钮下

有好多东西要执行,其中一项可能要等很久,使用多线程就可以达到那一项在执行的过程中,后面的也开始执行,而不用等那一项结束再开始。

 

我想要达到类似于后台在运作,在运行的过程中我还可以做其它操作,等运行好了直接显示出来,我的代码

全局代码

Public Sub setA()
Tables("窗体表").fill(查询语句,"数据源",True)

Tables("窗体表").select
End Sub

窗体代码

Dim t1 As Threading.Thread
t1 = New Threading.Thread(AddressOf setA)
t1.Start()

上面代码在执行的过程中只能等待它执行完毕才能进行其它操作,麻烦各位老师解答下能否实现

类似于后台在运作,在大数据查询的过程中我还可以做其它操作(能打开其它报表就行)

 

万分感谢

 

[此贴子已经被作者于2016/10/5 9:44:06编辑过]

--  作者:狐狸爸爸
--  发布时间:2016/10/5 9:52:00
--  
原理没有错,但是用多线程最好不要涉及数据的修改,包括删除、加载填充之类,还有界面的变动,foxtable规划之初就是一个单线程的东东,很难改。
可以用多线程处理数据统计分析、报表生成之类的工作。
[此贴子已经被作者于2016/10/5 9:56:45编辑过]

--  作者:zhengboxin
--  发布时间:2016/10/5 9:56:00
--  
好的,谢谢狐爸,明白应用范围!