[发明专利]一种文件处理方法、装置、电子设备及计算机可读介质在审

专利信息
申请号: 202111626169.4 申请日: 2021-12-28
公开(公告)号: CN114327404A 公开(公告)日: 2022-04-12
发明(设计)人: 徐强 申请(专利权)人: 建信金融科技有限责任公司
主分类号: G06F8/30 分类号: G06F8/30
代理公司: 中原信达知识产权代理有限责任公司 11219 代理人: 李阳;徐敏
地址: 200120 上海市中国(上海*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 文件 处理 方法 装置 电子设备 计算机 可读 介质
【说明书】:

本申请公开了文件处理方法、装置、电子设备及计算机可读介质,涉及自动程序设计技术领域,一具体实施方式包括:接收文件处理请求,获取对应的文件描述符;调用构造函数,以基于文件描述符生成轮询实例;调用轮询实例注册文件描述符,进而生成轮询对象;基于轮询对象执行对应的文件的处理。通过生成轮询对象,各进程可对轮询对象的状态进行同时编辑,从而可以基于文件描述符的状态实现对文件操作的多路复用,实现一个进程可以监视多个文件描述符,可以实现各进程同时打开文件,进行顺序同时读写,并减少对业务代码的改动。

技术领域

本申请涉及自动程序设计技术领域,尤其涉及一种文件处理方法、装置、电子设备及计算机可读介质。

背景技术

在软件开发的服务器端,会存在对于进程间文件的频繁读写交替的情况。现实软件开发中go语言读写文件操作是阻塞式的,多个进程频繁对于同一个文件进行读写操作时,一个进程open一个文件进行写操作,直到该进程close该文件,其他进程才能对此文件进行读写操作,从而导致对文件的读写处理效率低下。

在实现本申请过程中,发明人发现现有技术中至少存在如下问题:

多个进程频繁对于同一个文件进行读写操作时,对文件的读写处理效率低下。

发明内容

有鉴于此,本申请实施例提供一种文件处理方法、装置、电子设备及计算机可读介质,能够解决现有的多个进程频繁对于同一个文件进行读写操作时,对文件的读写处理效率低下的问题。

为实现上述目的,根据本申请实施例的一个方面,提供了一种文件处理方法,包括:

接收文件处理请求,获取对应的文件描述符;

调用构造函数,以基于文件描述符生成轮询实例;

调用轮询实例注册文件描述符,进而生成轮询对象;

基于轮询对象执行对应的文件的处理。

可选地,基于文件描述符生成轮询实例,包括:

调用构造函数,以基于文件描述符创建监听对象并封装监听对象;

启动独立协程,以基于封装后的监听对象生成无限循环;

执行无限循环,进而调用监听函数以获取封装后的监听对象的状态;

基于封装后的监听对象的状态生成轮询实例。

可选地,调用轮询实例注册文件描述符,进而生成轮询对象,包括:

调用监听的事件注册函数将文件描述符注册到轮询实例中,进而生成轮询对象。

可选地,调用监听的事件注册函数将文件描述符注册到轮询实例中,进而生成轮询对象,包括:

调用监听的事件注册函数以封装轮询实例和文件描述符,并将封装后的文件描述符设置成非阻塞,进而得到轮询对象。

可选地,基于轮询对象执行对应的文件的处理,包括:

确定轮询对象对应的执行方法类型;

根据执行方法类型执行对应的文件的处理。

可选地,方法还包括:

获取对对应的文件的处理返回的状态,进而根据返回的状态调整对应的轮询对象的状态。

可选地,执行方法类型包括:

文件读、文件写、文件读等待、文件写等待和文件关闭中的一种或几种。

另外,本申请还提供了一种文件处理装置,包括:

接收单元,被配置成接收文件处理请求,获取对应的文件描述符;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于建信金融科技有限责任公司,未经建信金融科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111626169.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top