sciter扫描文件设计思路

Posted 静随️变

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sciter扫描文件设计思路相关的知识,希望对你有一定的参考价值。

创建线程,加载线程文件

功能点一:扫描文件

初始化环境

(1)接收到路径,并读取该路径下的文件(未判断是否为文件或目录),拼接绝对路径,再将其一次性压入路径栈(filestack

(2)启动定时器执行扫描文件

启动扫描:

步骤一:判断路径栈(filestack)是否为空,并且当前正在扫描的集合(fsSet)是否为空

  • 为空,清除扫描定时器(timerID),结束扫描
  • 不为空,进入步骤二

步骤二:从路径栈中取出栈顶,读取该路径下信息

  • 若为文件:保存到全局文件数组(list)中
  • 若为目录:不做任何操作,结束此次扫描,并将该目录传递另外一个处理函数 ( addStack
    • 该函数将通过接收的目录来读取该目录下的文件信息,拼接成绝对路径,再次压入路径栈(filestack)中

注:

(1)每次操作路径时需要将该路径放入集合中,并且在判断扫描是否结束时需要判断该集合是否为空,确保能够判断整个扫描已经结束。

功能点二:暂停、结束、及重新启动

在启动扫描中,全局保存当前扫描定时器ID timerID

  • 暂停:则清除定时器
  • 重新启动:则重新启动扫描,并全局保存定时器ID
  • 结束:则清除定时器

以上是关于sciter扫描文件设计思路的主要内容,如果未能解决你的问题,请参考以下文章

sciter: sciter-fs模块扫描文件API的使用及其注意细节

sciter实现异步扫描系统文件信息

sciter sciter 读取.ini 配置文件

[sciter]:sciter如何使用i18实现桌面应用多语言切换及其利弊

go语言使用go-sciter创建桌面应用 view对象常用方法,文件选择,窗口弹出,请求

sciter jsx 组件化编程