The invention provides an IO data stream processing method, device, storage medium and terminal. The IO data stream processing method provided by the invention includes: acquiring a memory buffer block in an IO memory buffer pool; receiving a data stream corresponding to an IO operation; encapsulating the data stream into a data structure according to the type of the IO operation; and encapsulating the number. The structure is stored in the memory cache block. The invention improves the operation efficiency of the IO port through the IO memory buffer pool, reduces the loss of the processor continuously generating new byte arrays, and can encapsulate the corresponding data stream of the IO operation into various types of data structures and then store them, thus making the use of the subsequent IO data stream more convenient and efficient.
【技术实现步骤摘要】
IO数据流处理方法、装置、存储介质和终端
本专利技术涉及信息处理技术,尤其是一种IO数据流处理方法、装置、存储介质和终端。
技术介绍
现有的部分计算机语言提供了简单IO操作(Input/Output,输入/输出操作)的API函数(ApplicationProgrammingInterface,应用程序编程接口),在读写文件或部分网络请求等场景下,可以使用IO数据流进行数据的字节读写;但直接用IO数据流进行读写操作时,处理器需要不断生成字节数组以充当存储数据流的容器,性能消耗较大;而且,生成的字节数组只支持字节的读写,后续还需要对存储的字节进行转换以便调用。基于以上问题,现有的IO操作函数在性能的消耗和使用便捷的方面,存在不足。
技术实现思路
本专利技术的目的旨在至少解决上述技术缺陷之一,特别是解决现有的IO操作对处理器的性能损耗的问题。本专利技术提供了一种IO数据流处理方法,包括:获取IO内存缓存池中的内存缓存块;接收IO操作对应的数据流;根据所述IO操作的类型把所述数据流封装成数据结构;把所述数据结构存储于所述内存缓存块。优选地,所述IO内存缓存池从物理内存中划分,通过链表方式存储所述内存缓存块。优选地,所述获取IO内存缓存池中的内存缓存块,包括:判断所述IO内存缓存池中是否有可用的内存缓存块;若是,从所述IO内存缓存池中获取一块内存缓存块;若否,从物理内存中申请一块内存缓存块作为IO内存缓存池的内存缓存块,获取该内存缓存块。优选地,所述从物理内存中申请一块内存缓存块作为IO内存缓存池的内存缓存块之后,还包括:记录所述申请的一块内存缓存块的申请时间点;确认当 ...
【技术保护点】
1.一种IO数据流处理方法,其特征在于,包括:获取IO内存缓存池中的内存缓存块;接收IO操作对应的数据流;根据所述IO操作的类型把所述数据流封装成数据结构;把所述数据结构存储于所述内存缓存块。
【技术特征摘要】
1.一种IO数据流处理方法,其特征在于,包括:获取IO内存缓存池中的内存缓存块;接收IO操作对应的数据流;根据所述IO操作的类型把所述数据流封装成数据结构;把所述数据结构存储于所述内存缓存块。2.根据权利要求1所述的处理方法,其特征在于,所述IO内存缓存池从物理内存中划分,通过链表方式存储所述内存缓存块。3.根据权利要求1所述的处理方法,其特征在于,所述获取IO内存缓存池中的内存缓存块,包括:判断所述IO内存缓存池中是否有可用的内存缓存块;若是,从所述IO内存缓存池中获取一块内存缓存块;若否,从物理内存中申请一块内存缓存块作为IO内存缓存池的内存缓存块,获取该内存缓存块。4.根据权利要求3所述的处理方法,其特征在于,所述从物理内存中申请一块内存缓存块作为IO内存缓存池的内存缓存块之后,还包括:记录所述申请的一块内存缓存块的申请时间点;确认当前时间点与所述申请时间点之间的距离大于预置时长;若物理内存的已使用容量大于第一预置值;确认所述申请的一块内存缓存块被释放,将所述申请的一块内存缓存块重新加入物理内存;若物理内存的已使用容量小于等于第一预置值且大于第二预置值;确认所述申请的一块内存缓存块被释放,获取被释放的持续时间,若持续时间大于预定时长,将所述申请的一块内存缓存块重新加入物理内存。5.根据权利要求3所述的处理方法,其特征在于,所述从物理内存中申请一块内存缓存块作为IO内存缓存池的内存缓存块之后,还包括:把申请的一块内存缓存块记录为额外内存缓存块的区域;额外内存缓存块的区域表示...
【专利技术属性】
技术研发人员:张嘉俊,
申请(专利权)人:广州优视网络科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。