以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  大数据量计算,如何缩短时间?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=133343)

--  作者:sloyy
--  发布时间:2019/4/12 13:40:00
--  大数据量计算,如何缩短时间?
一个3万条记录的数据库,要做计算,赋值等操作
For Each DR As DataRow In DataTables("Tmp_JFQK").DataRows
          dr("欠租起算日期")=dr("欠租起算日期").adddays(1)
          dr("数量")=datediff("m",dr("欠租起算日期"), dr("欠租截止日期"))+1
dr("欠租月数")=dr("欠租起算日期") & "至" & dr("欠租截止日期") & "欠租" & dr("数量") & "个月"
 Next
大概需要7-10分钟,有没有办法改成多线程操作,我开100个线程,缩短计算时间?
[此贴子已经被作者于2019/4/12 13:40:41编辑过]

--  作者:有点甜
--  发布时间:2019/4/12 13:51:00
--  

你试试每个线程处理100行,然后开启2个线程测试。

 

第一个线程处理0-99行,第二个线程处理100-199行。


--  作者:有点甜
--  发布时间:2019/4/12 13:52:00
--  

异步函数,参考 http://www.foxtable.com/mobilehelp/scr/3269.htm

 


--  作者:sloyy
--  发布时间:2019/4/12 17:22:00
--  
异步函数已做好,我开了10个线程,问题来了:
怎么知道这10个线程算完了?
我才能处理下一步

--  作者:有点甜
--  发布时间:2019/4/12 17:53:00
--  

看看

 

http://www.foxtable.com/mobilehelp/scr/3270.htm