以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 连续获取网页代码后狐表程序闪退 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=184127) |
-- 作者:lxhmax -- 发布时间:2022/11/24 16:00:00 -- 连续获取网页代码后狐表程序闪退 老师,下面这段代码运行几次之后,狐表的内存就越来越高,连续执行10次左右的时候程序就会闪退,有没办法每执行一次就清理一下内存? Dim w As New System.Windows.Forms.WebBrowser w.ScriptErrorsSuppressed = True w.Navigate("https://bj.ke.com/ershoufang/101116442271.html") Do Until w.ReadyState = 4 Application.DoEvents Loop Output.Show(w.DocumentText) |
-- 作者:有点蓝 -- 发布时间:2022/11/24 16:13:00 -- 最后加上下面代码试试 GC.Collect()
|
-- 作者:lxhmax -- 发布时间:2022/11/24 16:26:00 -- 老师,这句代码是什么意思?似乎有一点点效果,不过内存还是一样一直在增加,还有其他办法处理吗? |
-- 作者:有点蓝 -- 发布时间:2022/11/24 16:34:00 -- 这句代码用来回收垃圾。估计您不止是这句代码的问题,比如获取数据后填充到表格里,表格数据也会占用很多内存的。 不要使用内部表填充数据,然后可以先把上一次填充的数据清空,再填充下一次的数据,比如 DataTables("订单").LoadFilter = "[_identify] is null"
DataTables("订单").Load |
-- 作者:lxhmax -- 发布时间:2022/11/24 16:36:00 -- 没有执行其他的代码的,就是在命令窗口直接执行上面的那段代码 |
-- 作者:有点蓝 -- 发布时间:2022/11/24 16:41:00 -- 考虑把w.DocumentText保存到文件文件里,不要显示在命令窗口 |
-- 作者:lxhmax -- 发布时间:2022/11/24 16:43:00 -- 这句话我注释掉了,没有在命令窗口输出任何内容 |
-- 作者:有点蓝 -- 发布时间:2022/11/24 16:52:00 -- 试试,不行就没有办法了 Dim w As New System.Windows.Forms.WebBrowser w.ScriptErrorsSuppressed = True w.Navigate("https://bj.ke.com/ershoufang/101116442271.html") Do Until w.ReadyState = 4 Application.DoEvents Loop w.Dispose(true) GC.Collect()
|
-- 作者:lxhmax -- 发布时间:2022/11/24 17:03:00 -- 老师,弹出这个提示怎么处理?
|
-- 作者:有点蓝 -- 发布时间:2022/11/24 17:16:00 -- w.Dispose() |