精易论坛

标题: 关于9.4新增的“文件_枚举_队列” [打印本页]

作者: dangerace    时间: 2021-9-1 09:25
标题: 关于9.4新增的“文件_枚举_队列”
本帖最后由 dangerace 于 2021-9-1 09:28 编辑

可能不是bug,只是没有合适的标题类型,随便选的。

在最新的V9.4中,新增了“文件_枚举_队列”命令,我尝试写了一个例程,如下:
瞬间完成,所谓的回调函数段根本就没有被执行。是我写的不对吗?这个命令和其他现有文件枚举命令相比有什么优势?是不是这么用的?
建议更新列表中,如果新增了同样功能或者类似功能的新命令,最好说一下更新的理由,是更快了?还是解决了bug了?还是增加了功能了?现在啥也不说,光文件枚举就四五个命令了,小白都懵逼了,不知道该用哪个。



作者: 项目部004    时间: 2021-9-1 09:28

@阿杰大大
作者: dangerace    时间: 2021-9-1 09:30
本帖最后由 dangerace 于 2021-9-1 09:32 编辑
项目部004 发表于 2021-9-1 09:28
@阿杰大大

我尝试翻看 @阿杰大大 的历史主题,也未发现与此命令相关的帖子,实在摸不到头脑,只能在这里请教一下。
@项目部004 需要@本人出来解释吗?咱们精易官方将该命令加入模块,自己都不测试的?

作者: Awesome·LYG    时间: 2021-9-1 09:34

我尝试了一下,正常返回
作者: 项目部004    时间: 2021-9-1 09:38

我知道了!目录结尾不要加反斜杠!
作者: dangerace    时间: 2021-9-1 09:42
项目部004 发表于 2021-9-1 09:38
我知道了!目录结尾不要加反斜杠!

建议精易官方出台一个“精易模块代码规范”,对一些共性问题进行规范和约束。例如参数如果是目录,结尾到底要不要有“\”,统一一下,以免用户在不同命令中必须使用不同格式,都懵逼了。
作者: 绽放青春    时间: 2021-9-1 10:38
项目部004 发表于 2021-9-1 09:38
我知道了!目录结尾不要加反斜杠!

文件-枚举-队列   是不是 搜索的文件 会  立刻显示···而不是  搜索完全部一块显示
作者: 阿杰大大    时间: 2021-9-1 10:43
普通的所有枚举文件形式都是递归,这个形式不使用递归,使用队列来实现无限层文件查找,
非得说有缺点的话就是递归的缺点了,递归是子程序调子程序,每次调用都会创建一个新的栈空间,只有调用结束才会释放.所以如果层次深到一定层次,那么就会把栈空间消失殆尽,就会栈溢出,随之崩溃,
队列形式的话就没使用递归,使用循环来进行文件遍历,同时也能达到无限层寻找.同时因为是循环,速度肯定比递归的形式快.
作者: dangerace    时间: 2021-9-1 10:48
阿杰大大 发表于 2021-9-1 10:43
普通的所有枚举文件形式都是递归,这个形式不使用递归,使用队列来实现无限层文件查找,
非得说有缺点的话就是 ...

谢谢,如果精易官方在更新列表中加上这么一句“采用队列算法可以解决递归算法的一系列问题,并提高搜索速度”,小白们就明白了
作者: 神圣大锅    时间: 2021-9-1 11:32
之前的文件_枚举,参数用不用加\都是可以运行的
作者: 阿杰大大    时间: 2021-9-1 11:58
dangerace 发表于 2021-9-1 10:48
谢谢,如果精易官方在更新列表中加上这么一句“采用队列算法可以解决递归算法的一系列问题,并提高搜索速 ...

3、新增“文件_枚举_队列”,用队列的方式枚举文件
作者: dangerace    时间: 2021-9-1 13:25
阿杰大大 发表于 2021-9-1 11:58
3、新增“文件_枚举_队列”,用队列的方式枚举文件

小白嘛,并未直接从“用队列方式枚举文件”这个字眼中品味出什么滋味来。呵呵。

刚才用代码简单做了一个验证,队列方式,在处理大量文件时,确实相比递归方式效率提高不少。

我用一个文件数量大约在45万左右的硬盘做测试,枚举所有文件,队列方式比递归方式节省了大约35%的时间。
作者: 阿杰大大    时间: 2021-9-1 16:27
dangerace 发表于 2021-9-1 13:25
小白嘛,并未直接从“用队列方式枚举文件”这个字眼中品味出什么滋味来。呵呵。

刚才用代码简单做了一个 ...

重点你要整个深度很深的文件,递归的会崩溃.小白用就别在乎原理了,瞎用就得了,毕竟模块也不是给你上课的.




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4