[发明专利]一种高效扫描磁盘中文件的方法在审
申请号: | 201911083113.1 | 申请日: | 2019-11-07 |
公开(公告)号: | CN110825700A | 公开(公告)日: | 2020-02-21 |
发明(设计)人: | 赵是吉;徐滢 | 申请(专利权)人: | 成都品果科技有限公司 |
主分类号: | G06F16/16 | 分类号: | G06F16/16;G06F9/50;G06F9/54 |
代理公司: | 成都高远知识产权代理事务所(普通合伙) 51222 | 代理人: | 李安霞;曾克 |
地址: | 610000 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 高效 扫描 磁盘 文件 方法 | ||
本发明公开一种高效扫描磁盘中文件的方法,属于电子设备文件管理方法领域,本发明扫描时每个文件夹都单独开一个线程来扫描,采用线程队列的方式来管理,如果线程池当前线程数量已经到达峰值,那么后面进来的文件夹扫描线程排队等待,如果线程池有空闲资源,立马让队头出列,加入线程池开始扫描。这种方式可以最大化利用系统资源,提升文件扫描速度。
技术领域
本发明涉及电子设备文件管理方法领域,尤其涉及一种高效扫描磁盘中文件的方法。
背景技术
在开发相册应用或者文件管理器时,文件扫描是必不可少的,虽然在Android系统中提供了多媒体数据库,可以快速地获取磁盘中的媒体文件,但是受权限限制,多媒体数据的文件目录并不完整,而且新增或删除文件时更新不及时,所以Android系统提供的多媒体数据库并不能满足我们的需求,
现有技术中,扫描方法注药有以下两种:
1、递归扫描:对文件夹进行逐个扫描,其优点为准确度高,但是该技术效率极其低下,如果文件夹嵌套比较多的话,扫描效率明显下降;
2、使用Android多媒体数据库,其优点为效率高,但是该技术文件内容不够准确,新增或删除文件时更新不及时,而且该方案只能用于Android系统。
发明内容
本发明旨在提供一种高效扫描磁盘中文件的方法,能够最大化调度系统资源,在保证结果准确的同时也达到快速扫描全盘文件的需求。
为达到上述目的,本发明是采用以下技术方案实现的:
本发明公开一种高校扫描磁盘中文件的方法,包括以下步骤:
a、获取根目录下所有的内容文件,判断内容文件的类型属于文件或文件夹,若内容文件的类型为文件,则执行步骤e,
若内容文件的类型为文件夹,则执行步骤b;
b、将获得的文件夹依次送入文件夹扫描队列尾部;
c、判断线程池是否有空闲资源,
若线程池有空闲资源,安排文件夹扫描队列中处于列头的文件夹进入线程池进行扫描,执行步骤d,
若线程池没有空闲资源,安排文件夹扫描队列等待,执行步骤c;
d、扫描进入线程池内的文件夹,判断文件夹下的内容文件的类型属于文件或文件夹,
若内容文件的类型为文件,则执行步骤e,
若内容文件的类型为文件夹,则执行步骤b;
e、对文件进行处理。
优选的,步骤d中,扫描每个文件夹均单独使用一个线程。
优选的,步骤c中,通过监测线程池中的线程数量峰值判断线程池是否有空闲资源。
优选的,应用环境为ios系统。
本发明的有益效果:
本发明扫描时每个文件夹都单独开一个线程来扫描,采用线程队列的方式来管理,如果线程池当前线程数量已经到达峰值,那么后面进来的文件夹扫描线程排队等待,如果线程池有空闲资源,立马让队头出列,加入线程池开始扫描。这种方式可以最大化利用系统资源,提升文件扫描速度。
附图说明
图1为本发明的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。
如图1所示,本发明包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都品果科技有限公司,未经成都品果科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911083113.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有除尘装置的管材切割机
- 下一篇:抽油机井泵功图井下测试仪