dcl1214 发表于 2024-12-26 21:30:59

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")
   )
         )


自贡黄明儒 发表于 2024-12-27 13:04:31

kozmosovia 发表于 2024-12-27 11:50
这代码写的比AI自造的都抽象
见杜总发一些新功能,我很想白嫖一点,可是他的代码总是没法用。我早想炮轰他,现在好了,有您打头阵,让我们一起来声讨。

wuyunpeng888 发表于 2024-12-26 21:36:04

和lisp有啥关系

kozmosovia 发表于 2024-12-27 11:50:05

这代码写的比AI自造的都抽象

llsheng_73 发表于 2024-12-27 13:09:43

本帖最后由 llsheng_73 于 2024-12-27 13:12 编辑

自贡黄明儒 发表于 2024-12-27 13:04
见杜总发一些新功能,我很想白嫖一点,可是他的代码总是没法用。我早想炮轰他,现在好了,有您打头阵,让 ...
这个代码确实无法嫖走。。。:lol
不过哪怕用文件系统对象,先取得指定盘的所有目录及子目录,一般都要明显卡一下才能出结果
想着直接访问文件分配表嘛,又无从着手

dcl1214 发表于 2024-12-27 13:26:03

llsheng_73 发表于 2024-12-27 13:09
这个代码确实无法嫖走。。。
不过哪怕用文件系统对象,先取得指定盘的所有目录及子目录,一般都要明 ...




微软的文件索引是开放的,我随便打开了一个

cchessbd 发表于 2024-12-27 17:10:21

代码没法用,有点发了=没发的感觉。

panliang9 发表于 2024-12-28 08:50:00

本帖最后由 panliang9 于 2024-12-28 08:51 编辑

搜文件应该没有比 “everything” 快吧,我们前面不是讨论过调用 "everything"搜文件的嘛,黄工的贴还是精华贴呢。

你有种再说一遍 发表于 2024-12-28 09:02:37

panliang9 发表于 2024-12-28 08:50
搜文件应该没有比 “everything” 快吧,我们前面不是讨论过调用 "everything"搜文件的嘛,黄工的贴还是精 ...
肯定没有啊,everything压根不遍历磁盘,而且现在都是NTFS格式了,谁还在FAT

dcl1214 发表于 2024-12-28 10:12:50

everything 有建立缓存的过程,这个过程会造成时间差
页: [1] 2
查看完整版本: lisp调用exe变向多线程深度遍历搜索文件