CN113778664A - 文件传输方法、设备、电子设备及存储介质 - Google Patents
文件传输方法、设备、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113778664A CN113778664A CN202110902204.4A CN202110902204A CN113778664A CN 113778664 A CN113778664 A CN 113778664A CN 202110902204 A CN202110902204 A CN 202110902204A CN 113778664 A CN113778664 A CN 113778664A
- Authority
- CN
- China
- Prior art keywords
- data
- data blocks
- external terminal
- file
- segmented
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开提供的一种文件传输方法、设备、电子设备及存储介质,包括:确定需要进行传输的文件数据;按照预设的切分大小对文件数据进行切分,生成至少两个切分数据块;根据当前空闲线程数确定同步传输数量,按照同步传输数量将切分数据块传输至外部终端;响应于完成全部切分数据块的传输,指示外部终端对切分数据块进行组装,以得到文件数据。本公开通过在对生物信息资料传输过程中,将大文件分割成大量切分数据块,再根据系统线程数确定每次同步上传的切分数据块数量,以此快速完成大文件的传输任务,工作人员只需确定需要进行传输的文件,系统会自动快速的完成上传,降低了资源占用的同时,提升了便利性,并间接提升了工作人员的工作效率。
Description
技术领域
本公开涉及数据传输技术领域,尤其涉及一种文件传输方法、设备、电子设备及存储介质。
背景技术
目前生物信息分析行业主流采用移动硬盘插入生物信息分析一体机,然后通过命令行执行挂载以及复制到生物系信息分析一体机的指定公共目录。这种方式需要插移动硬盘到生物信息分析一体机上、并且需要通过输入命令行的方式执行命令操作,需要工作人员在现场进行数据传输及操作,而生物信息数据本身都是较为庞大的数据,从而这样的方式在数据传输过程中带来了较大的不便利性,占用了较多资源的同时降低了工作人员的工作效率。
发明内容
有鉴于此,本公开的目的在于提出一种文件传输方法、设备、电子设备及存储介质。
基于上述目的,本公开提供了一种文件传输方法,包括:
确定需要进行传输的文件数据;
按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块;
根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端;
响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
基于同一构思,本公开还提供了一种文件传输设备,包括:
确定模块,用于确定需要进行传输的文件数据;
切分模块,用于按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块;
传输模块,用于根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端;
指示模块,用于响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
基于同一构思,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任一项所述的方法。
基于同一构思,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机实现如上任一项所述的方法。
从上面所述可以看出,本公开提供的一种文件传输方法、设备、电子设备及存储介质,包括:确定需要进行传输的文件数据;按照预设的切分大小对文件数据进行切分,生成至少两个切分数据块;根据当前空闲线程数确定同步传输数量,按照同步传输数量将切分数据块传输至外部终端;响应于完成全部切分数据块的传输,指示外部终端对切分数据块进行组装,以得到文件数据。本公开通过在对生物信息资料传输过程中,将大文件分割成大量切分数据块,再根据系统线程数确定每次同步上传的切分数据块数量,以此快速完成大文件的传输任务,工作人员只需确定需要进行传输的文件,系统会自动快速的完成上传,降低了资源占用的同时,提升了操作便利性和准确性,并间接提升了工作人员的工作效率。
附图说明
为了更清楚地说明本公开实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提出的一种文件传输方法的流程示意图;
图2为本公开实施例提出的一种文件传输设备的结构示意图;
图3为本公开实施例提出的电子设备结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本说明书进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件、物件或者方法步骤涵盖出现在该词后面列举的元件、物件或者方法步骤及其等同,而不排除其他元件、物件或者方法步骤。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,生物信息分析一体机是一种专业的临床基因组数据分析、解读与数据管理平台。通过集成领先的基因组数据分析解读软件以及大量常见生物医疗疾病数据库,为NGS(“下一代”测序技术,"Next-generation"sequencing technology,又称高通量测序技术,High-throughputsequencing)临床诊断提供了快速、方便、准确的分析及解读服务。然而生物信息数据有着较为庞大的数据量,现有针对该分析一体机的数据传输方式还停留在通过插接移动硬盘,并在命令行下执行命令操作来完成数据的导入、导出。以此带来了诸多不便的同时其准确性也不高。
结合上述实际情况,本公开实施例提出了一种文件传输方案,通过在对生物信息资料传输过程中,将大文件分割成大量切分数据块,再根据系统线程数确定每次同步上传的切分数据块数量,以此快速完成大文件的传输任务,工作人员只需确定需要进行传输的文件,系统会自动快速的完成上传,降低了资源占用的同时,提升了操作便利性和准确性,并间接提升了工作人员的工作效率。
参考图1所示,为公开的一种文件传输方法的流程示意图,具体包括以下步骤:
步骤101,确定需要进行传输的文件数据。
本步骤旨在,确定出当前需要进行传输的文件数据,以便之后对这些文件数据进行传输。其中,文件数据即为各类生物信息数据,由于其一般都是用于记录基因组数据,从而其本身大小一般都非常大,在原有技术中只能通过移动硬盘等大容量移动存储介质才能进行数据转移。
在具体应用场景中,用户可以在操作界面上直接手动选择需要进行传输的文件,例如通过将文件拖拽或复制到特定的传输框中,进而可以确定出用户确定出的要进行传输的文件是哪些。
步骤102,按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块。
本步骤旨在,对文件数据进行切分处理,将每个文件数据切分成较小的切分数据块,以方便之后进行快速的数据传输。其中,预设的切分大小即为事先确定的每个切分数据块的大小,可以根据实际需要进行自行确定,例如将切分大小定为1Mb或2Mb等等。
在具体应用场景中,在用户确定好要传输的文件数据之后,对每个文件数据按照预先设置好的切块大小进行数据切割,例如切分成大小均为1Mb的切分数据块。
步骤103,根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端。
本步骤旨在,按照当前系统的线程数来确定当前系统能够支持的同步传输的具体数量,按照这个数量进行切分数据块的数据传输,以便尽快将所有切分数据块传输出去。其中,当前空闲线程数即为当前系统处理器的空闲线程数,其决定了能够同步执行的任务数量,例如双核四线程处理器其能够支持最大四个任务同时执行。
在具体应用场景中,先确定出当前系统空闲的线程数,例如有三个线程是空闲的,则在进行数据传输时,同时进行三个切分数据块的传输,从而尽可能的快速进行数据传输,同时,传输时可以是在所有切分数据块中随机选取三个切分数据块,也可以是按照顺序三个三个的进行切分数据块的传输等等。在这个过程中,由于每个切分数据块的大小都比较小,其传输的速度是非常快的,同时由于将较大的文件数据进行了切分,切分后的切分数据块相当于独立文件,其在传输过程中若遇到了断网等特殊情况,其断点的确定也是非常容易的,例如确定断网前是哪些切分数据块正在进行传输,则这些切分数据块即为断点,在重新联网后,直接重新对这些切分数据块进行重新传输即可,进而可以很轻易的确定出断点位置,快速恢复数据传输,同时也不用担心断网会对之前已经传输完成的切分数据块造成影响。
之后,由于文件传输可以是对一体机上的数据进行导入或导出,在本方案中,外部终端可以是外部计算机终端进行数据导出,也可以是一体机终端进行数据导入。
步骤104,响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
本步骤旨在,在完成一个文件数据的全部切分数据块的传输任务之后,使外部终端对该文件数据的所有切分数据块进行再组装,重新生成该文件数据,以完成该文件数据的传输任务。
在具体应用场景中,可以是按照传输顺序进行组装,例如切分数据块进行传输时就是按照顺序依次进行传输的;也可以是按照事先确定的每个切分数据块的位置信息,按顺序进行组装,其中,每个切分数据块的位置信息,可以是切分时就生成的记录有每个切分数据块的具体位置的列表,也可以是每个切分数据块在生成后与自身绑定的含有位置信息的标签等等。在全部切分数据块传输完成后,对这些切分数据块进行组装以生成文件数据。在另一具体应用场景中,在切分数据块传输时可以是按照顺序进行传输的,外部终端在每个切分数据块完成传输后就直接进行数据块的组装,即以“来一个装一个”的方式进行再组装,从而在最后一个切分数据块完成传输后,外部终端很快就能组装完整个文件数据。即使同一时间是进行多个切分数据块的传输,外部终端也可以根据每个切分数据块的位置标签等指示信息确定切分数据块的先后顺序,进而同样可以完成“来一个装一个”的方式的再组装。
从上面所述可以看出,本公开提供的一种文件传输方法,包括:确定需要进行传输的文件数据;按照预设的切分大小对文件数据进行切分,生成至少两个切分数据块;根据当前空闲线程数确定同步传输数量,按照同步传输数量将切分数据块传输至外部终端;响应于完成全部切分数据块的传输,指示外部终端对切分数据块进行组装,以得到文件数据。本公开通过在对生物信息资料传输过程中,将大文件分割成大量切分数据块,再根据系统线程数确定每次同步上传的切分数据块数量,以此快速完成大文件的传输任务,工作人员只需确定需要进行传输的文件,系统会自动快速的完成上传,降低了资源占用的同时,提升了操作便利性和准确性,并间接提升了工作人员的工作效率。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本公开实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在具体应用场景中,为了能够对每个传输的切分数据块进行校验,以保证切分数据块的准确性,从而保证整个文件数据的准确性。所述生成至少两个切分数据块之后,还包括:确定每个所述切分数据块的第一哈希值。所述按照所述同步传输数量将所述切分数据块传输至外部终端之后,还包括:响应于完成一个切分数据块的传输,将该切分数据块的第一哈希值传输至所述外部终端;指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值,以确定该切分数据块是否正确传输。
其中,哈希值即为哈希函数指将哈希表中元素的关键键值映射为元素存储位置的函数。每个文件根据其内容的不同,其哈希值也不尽相同。从而若切分数据块在传输过程中,出现传输错误,导致接收到的切分数据块中的内容与原始内容不一致,其哈希值也必然不同。因此可以根据传输前后同一切分数据块的哈希值是否相同来判断是否准确传输了该切分数据块。在具体应用场景中,可以是每个切分数据块传输完成后就进行一次对比,或者是一个文件数据的全部切分数据块都传输完成后再每个进行对比。其中哈希值可以是以表格形式统一进行传输,或是附于每个切分数据块的标签形式进行传输等等。
在具体应用场景中,为了能够保证每个切分数据块都能准确的进行传输。所述指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值之后,还包括:响应于获取到所述外部终端确定该切分数据块的第一哈希值与第二哈希值不一致的信息,对该切分数据块进行重新传输。
其中,外部终端在确定了某个切分数据块的传输前后的哈希值并不相同后,会传输来一个指示信息,系统在收到这个指示信息之后,会对这个切分数据块进行重新传输,直至这个切分数据块的传输前后的哈希值相同为止。
在具体应用场景中,为了应对在传输过程中突然断网等突发情况,保证整体文件数据传输的准确性。所述按照所述同步传输数量将所述切分数据块传输至外部终端,包括:响应于与所述外部终端重新建立数据连接,获取所述外部终端传输的已完成列表;根据所述已完成列表确定全部所述切分数据块中未完成传输的切分数据块,按照所述同步传输数量将未完成传输的切分数据块传输至外部终端。
其中,响应于与所述外部终端重新建立数据连接即为当断网或通信突然中断后重新建立了网络连接,完成了数据通道的重新建立。外部终端在重新建立连接后,会先对未完成传输的文件数据进行检查,确定其已完成的切分数据块,在外部终端处,只要没有完成整个切分数据块,其就不会被标记位已完成,进而,不论是还未进行传输的切分数据块还是断网时中断传输的切分数据块,都会被认为是未完成,从而,根据外部终端传输来的已完成列表,其他未完成的切分数据块直接进行重新传输即可保证整个文件数据的准确性,从而可以快速的确定断点并重新进行传输,提升断点续传的反应时间。
在具体应用场景中,为了在切分数据块传输完成后方便外部终端能够快速完成文件数据的组装。所述生成至少两个切分数据块之后,还包括:按顺序确定每个所述切分数据块的标识信息,将所述标识信息传输给所述外部终端,以使所述外部终端能够根据所述标识信息对所述切分数据块进行组装。即,文件数据完成切分时就对每个切分数据块的具体位置进行了标记,并将切分数据块的顺序位置发送给了外部终端,进而外部终端在完成了所有切分数据块的传输后能够直接根据这个顺序进行切分数据块的重组。当然,外部终端也可以在每个切分数据块传输完成之后就进行这个切分数据块的组装等等。
在具体应用场景中,为了使用户能够直观的观察到当前的传输进度。所述按照所述同步传输数量将所述切分数据块传输至外部终端,还包括:计算当前完成传输的所述切分数据块的总数据量与所述文件数据的数据量的比值,根据所述比值展示传输进度。以此,显示整个文件数据的传输进度,使用户能够直观的简单便捷的确定当前整体传输进度。
基于同一构思,与上述任意实施例方法相对应的,本公开还提供了一种文件传输设备。
参考图2,所述文件传输设备,包括:
确定模块210,用于确定需要进行传输的文件数据;
切分模块220,用于按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块;
传输模块230,用于根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端;
指示模块240,用于响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
为了描述的方便,描述以上设备时以功能分为各种模块分别描述。当然,在实施本公开实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的设备用于实现前述实施例中相应的文件传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
作为一个可选的实施例,切分模块220,还包括:
确定每个所述切分数据块的第一哈希值。
作为一个可选的实施例,传输模块230,还包括:
响应于完成一个切分数据块的传输,将该切分数据块的第一哈希值传输至所述外部终端;指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值,以确定该切分数据块是否正确传输。
作为一个可选的实施例,传输模块230,还包括:
响应于获取到所述外部终端确定该切分数据块的第一哈希值与第二哈希值不一致的信息,对该切分数据块进行重新传输。
作为一个可选的实施例,传输模块230,包括:
响应于与所述外部终端重新建立数据连接,获取所述外部终端传输的已完成列表;
根据所述已完成列表确定全部所述切分数据块中未完成传输的切分数据块,按照所述同步传输数量将未完成传输的切分数据块传输至外部终端。
作为一个可选的实施例,切分模块220,还包括:
按顺序确定每个所述切分数据块的标识信息,将所述标识信息传输给所述外部终端,以使所述外部终端能够根据所述标识信息对所述切分数据块进行组装。
作为一个可选的实施例,传输模块230,还包括:
计算当前完成传输的所述切分数据块的总数据量与所述文件数据的数据量的比值,根据所述比值展示传输进度。
基于同一构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的文件传输方法。
图3示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的文件传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的文件传输方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的文件传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
需要说明的是,本公开的实施例还可以通过以下方式进一步描述:
作为一个可选的实施例,其中,所述生成至少两个切分数据块之后,还包括:
确定每个所述切分数据块的第一哈希值。
作为一个可选的实施例,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端之后,还包括:
响应于完成一个切分数据块的传输,将该切分数据块的第一哈希值传输至所述外部终端;指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值,以确定该切分数据块是否正确传输。
作为一个可选的实施例,其中,所述指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值之后,还包括:
响应于获取到所述外部终端确定该切分数据块的第一哈希值与第二哈希值不一致的信息,对该切分数据块进行重新传输。
作为一个可选的实施例,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端,包括:
响应于与所述外部终端重新建立数据连接,获取所述外部终端传输的已完成列表;
根据所述已完成列表确定全部所述切分数据块中未完成传输的切分数据块,按照所述同步传输数量将未完成传输的切分数据块传输至外部终端。
作为一个可选的实施例,其中,所述生成至少两个切分数据块之后,还包括:
按顺序确定每个所述切分数据块的标识信息,将所述标识信息传输给所述外部终端,以使所述外部终端能够根据所述标识信息对所述切分数据块进行组装。
作为一个可选的实施例,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端,还包括:
计算当前完成传输的所述切分数据块的总数据量与所述文件数据的数据量的比值,根据所述比值展示传输进度。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种文件传输方法,包括:
确定需要进行传输的文件数据;
按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块;
根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端;
响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
2.根据权利要求1所述的方法,其中,所述生成至少两个切分数据块之后,还包括:
确定每个所述切分数据块的第一哈希值。
3.根据权利要求2所述的方法,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端之后,还包括:
响应于完成一个切分数据块的传输,将该切分数据块的第一哈希值传输至所述外部终端;指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值,以确定该切分数据块是否正确传输。
4.根据权利要求3所述的方法,其中,所述指示所述外部终端确定该切分数据块的第二哈希值,比较该切分数据块的第一哈希值与第二哈希值之后,还包括:
响应于获取到所述外部终端确定该切分数据块的第一哈希值与第二哈希值不一致的信息,对该切分数据块进行重新传输。
5.根据权利要求1所述的方法,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端,包括:
响应于与所述外部终端重新建立数据连接,获取所述外部终端传输的已完成列表;
根据所述已完成列表确定全部所述切分数据块中未完成传输的切分数据块,按照所述同步传输数量将未完成传输的切分数据块传输至外部终端。
6.根据权利要求1所述的方法,其中,所述生成至少两个切分数据块之后,还包括:
按顺序确定每个所述切分数据块的标识信息,将所述标识信息传输给所述外部终端,以使所述外部终端能够根据所述标识信息对所述切分数据块进行组装。
7.根据权利要求1所述的方法,其中,所述按照所述同步传输数量将所述切分数据块传输至外部终端,还包括:
计算当前完成传输的所述切分数据块的总数据量与所述文件数据的数据量的比值,根据所述比值展示传输进度。
8.一种文件传输设备,包括:
确定模块,用于确定需要进行传输的文件数据;
切分模块,用于按照预设的切分大小对所述文件数据进行切分,生成至少两个切分数据块;
传输模块,用于根据当前空闲线程数确定同步传输数量,按照所述同步传输数量将所述切分数据块传输至外部终端;
指示模块,用于响应于完成全部所述切分数据块的传输,指示所述外部终端对所述切分数据块进行组装,以得到所述文件数据。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至7任一项所述的方法。
10.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机实现权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110902204.4A CN113778664A (zh) | 2021-08-06 | 2021-08-06 | 文件传输方法、设备、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110902204.4A CN113778664A (zh) | 2021-08-06 | 2021-08-06 | 文件传输方法、设备、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113778664A true CN113778664A (zh) | 2021-12-10 |
Family
ID=78837015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110902204.4A Pending CN113778664A (zh) | 2021-08-06 | 2021-08-06 | 文件传输方法、设备、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113778664A (zh) |
-
2021
- 2021-08-06 CN CN202110902204.4A patent/CN113778664A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109739855B (zh) | 实现数据表拼接及自动训练机器学习模型的方法和系统 | |
US9996209B2 (en) | Techniques for representing and comparing workflows | |
CN108628885B (zh) | 一种数据同步方法、装置及存储设备 | |
CN110688305B (zh) | 测试环境同步方法、装置、介质、电子设备 | |
CN110727581B (zh) | 崩溃定位方法与电子设备 | |
WO2023226371A1 (zh) | 目标对象交互式重现的控制方法、装置、设备及存储介质 | |
CN106557308A (zh) | 一种软件持续集成方法及装置 | |
US10582388B2 (en) | Electronic apparatus and method of executing application program | |
CN117215910A (zh) | 接口测试框架生成方法、测试方法、电子设备及存储介质 | |
US20140164845A1 (en) | Host computer and method for testing sas expanders | |
CN114579147A (zh) | 烧录校验方法、装置、终端设备及存储介质 | |
US20220318205A1 (en) | Machine station file processing methods and machine station file processing systems | |
CN108023905A (zh) | 物联网应用系统及方法 | |
US9910883B2 (en) | Enhanced batch updates on records and related records system and method | |
CN111078518B (zh) | 数据采集方法、终端设备和计算机可读存储介质 | |
CN113778664A (zh) | 文件传输方法、设备、电子设备及存储介质 | |
CN116521148A (zh) | 代码生成方法、装置、非易失性存储介质及电子设备 | |
CN111737784B (zh) | 基于数字化三维的zxmp s385子架的板卡选型配置方法及设备 | |
CN115185458A (zh) | 一种数据写入方法、装置、存储介质和计算机设备 | |
CN113761005A (zh) | 一种元数据配置方法、装置及电子设备和存储介质 | |
CN112417012A (zh) | 数据处理方法及系统 | |
CN115061864B (zh) | Arm架构平台内存测试方法、系统、设备和存储介质 | |
CN112653595B (zh) | 芯片网络功能测试方法、装置、存储介质及设备 | |
CN117130946B (zh) | 一种测试场景生成方法、装置、电子设备和可读存储介质 | |
CN112732568B (zh) | 一种系统日志获取方法、装置、存储介质及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |