lisp调用exe变向多线程深度遍历搜索文件
本帖最后由 dcl1214 于 2024-12-26 21:41 编辑让lisp变向支持多线程深度搜索文件,SearchFile 函数在exe中,该函数根据电脑内存、cpu满负荷多线程搜索磁盘文件;最初想法是让exe遍历所有磁盘,保存文件地址到sqlite中作为缓存让lisp快速查询,后来发现多线程搜索速度非常快,于是取消了sqtlie数据库建立缓存的这个做法;lisp调用exe的方法如下
(setq body "{\"list\": [\"C:/Users/Public/用户配置\",\"C:/Users/Public\",\"C:/TEMP\",\"C:/Users/Public/Changli_harness_software\",\"C:/Users/Administrator/Documents/zx-temp\"],\"search\": \"分支点.dwg\",\"isAll\": true}")
($http-local2$
(list
(cons "IP" "http://127.0.0.1")
(cons "端口" ($locport$))
(cons "接口" "SearchFile")
;(cons "数据库路径" db-path)
(cons "报文头"
(list (cons "Client-Auth" (getenv "ComputerName")))
)
(cons "Sql" (LIST body))
(cons "http方法" "POST")
(cons "返回格式" "db")
)
)
kozmosovia 发表于 2024-12-27 11:50
这代码写的比AI自造的都抽象
见杜总发一些新功能,我很想白嫖一点,可是他的代码总是没法用。我早想炮轰他,现在好了,有您打头阵,让我们一起来声讨。 和lisp有啥关系 这代码写的比AI自造的都抽象 本帖最后由 llsheng_73 于 2024-12-27 13:12 编辑
自贡黄明儒 发表于 2024-12-27 13:04
见杜总发一些新功能,我很想白嫖一点,可是他的代码总是没法用。我早想炮轰他,现在好了,有您打头阵,让 ...
这个代码确实无法嫖走。。。:lol
不过哪怕用文件系统对象,先取得指定盘的所有目录及子目录,一般都要明显卡一下才能出结果
想着直接访问文件分配表嘛,又无从着手
llsheng_73 发表于 2024-12-27 13:09
这个代码确实无法嫖走。。。
不过哪怕用文件系统对象,先取得指定盘的所有目录及子目录,一般都要明 ...
微软的文件索引是开放的,我随便打开了一个
代码没法用,有点发了=没发的感觉。
本帖最后由 panliang9 于 2024-12-28 08:51 编辑
搜文件应该没有比 “everything” 快吧,我们前面不是讨论过调用 "everything"搜文件的嘛,黄工的贴还是精华贴呢。 panliang9 发表于 2024-12-28 08:50
搜文件应该没有比 “everything” 快吧,我们前面不是讨论过调用 "everything"搜文件的嘛,黄工的贴还是精 ...
肯定没有啊,everything压根不遍历磁盘,而且现在都是NTFS格式了,谁还在FAT everything 有建立缓存的过程,这个过程会造成时间差
页:
[1]
2