CN104503904A - 数据流的处理方法和装置 - Google Patents

数据流的处理方法和装置 Download PDF

Info

Publication number
CN104503904A
CN104503904A CN201410769128.4A CN201410769128A CN104503904A CN 104503904 A CN104503904 A CN 104503904A CN 201410769128 A CN201410769128 A CN 201410769128A CN 104503904 A CN104503904 A CN 104503904A
Authority
CN
China
Prior art keywords
data stream
pending data
mistake
error
implementation
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.)
Granted
Application number
CN201410769128.4A
Other languages
English (en)
Other versions
CN104503904B (zh
Inventor
相利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201410769128.4A priority Critical patent/CN104503904B/zh
Publication of CN104503904A publication Critical patent/CN104503904A/zh
Application granted granted Critical
Publication of CN104503904B publication Critical patent/CN104503904B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据流的处理方法和装置。其中,该数据流的处理方法包括:获取待执行数据流和用于检测数据流的代码;封装待执行数据流和代码,得到封装程序;利用封装程序执行待执行数据流;在封装程序判断出待执行数据流出错时,对待执行数据流进行恢复;以及在封装程序判断出待执行数据流未出错时,输出执行待执行数据流得到的执行结果。通过本发明,解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。

Description

数据流的处理方法和装置
技术领域
本发明涉及互联网领域,具体而言,涉及一种数据流的处理方法和装置。
背景技术
在Java开发过程中,使用系统内置的InputStream和OutputStream中,如果发生了某些错误(比如网速慢,突然断网又立即恢复),那么数据流的读取会中断;进行错误处理之后,只能重新开启该数据流。如果在数据流错误次数达到一定数值时,放弃错误重试,实现难度很大。
现有技术在数据流出现错误时,需要修改代码结构,使用Java自带的异常错误处理方式包含数据流操作,使用全局变量记录当前的指针偏移量,发生错误后,如果该错误可以忽略,那么利用已经记录的指针偏移量调整新数据流的状态。与此同时,如果允许重试很多次,那么从代码实现角度讲非常麻烦,不断嵌套异常错误处理语法。代码编写的工作量很大,所有使用到该数据流的地方都需要做变更,可能会引起未知错误或者破坏原有架构,尤其涉及到多层调用的时候,更容易造成编码错误。
针对现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种数据流的处理方法和装置,以解决现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
为了实现上述目的,根据本发明实施例的一个方面,提供了一种数据流的处理方法。根据本发明的数据流的处理方法包括:获取待执行数据流和用于检测所述数据流的代码;封装所述待执行数据流和所述代码,得到封装程序;利用所述封装程序执行所述待执行数据流;在所述封装程序判断出所述待执行数据流出错时,对所述待执行数据流进行恢复;以及在所述封装程序判断出所述待执行数据流未出错时,输出执行所述待执行数据流得到的执行结果。
进一步地,利用所述封装程序执行所述待执行数据流包括:执行所述待执行数据流并判断执行过程是否出现错误;如果所述执行过程出现错误,则判断当前错误次数是否已经达到最大重试次数;
在判断当前错误次数已经达到所述最大重试次数时,向用户发出所述执行过程出错的提示信息;以及
在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流。
进一步地,在执行所述待执行数据流并判断执行过程是否出现错误之后,所述方法还包括:如果所述执行过程没有发生错误,则记录执行所述待执行数据流得到的执行结果;将所述执行结果发送给所述用户;以及将错误计数器中的计数清零。
进一步地,判断当前错误次数是否已经达到所述最大重试次数包括:获取预先设置的错误列表;从所述错误列表中查找所述错误;如果在所述错误列表中查找到所述错误,则提取所述错误列表中记录的所述错误的最大重试次数;如果在所述错误列表中没有查找到所述错误,则将所述错误发送给所述用户。
进一步地,在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流包括:记录所述数据流的出错位置;从记录的所述出错位置开始继续执行所述待执行数据流。
为了实现上述目的,根据本发明实施例的另一方面,提供了一种数据流的处理装置。根据本发明的数据流的处理装置包括:获取单元,用于获取待执行数据流和用于检测所述数据流的代码;封装单元,用于封装所述待执行数据流和所述代码,得到封装程序;执行单元,用于利用所述封装程序执行所述待执行数据流;恢复单元,用于在所述封装程序判断出所述待执行数据流出错时,对所述待执行数据流进行恢复;以及输出单元,用于在所述封装程序判断出所述待执行数据流未出错时,输出执行所述待执行数据流得到的执行结果。
进一步地,所述执行单元包括:第一执行模块,用于执行所述待执行数据流并判断执行过程是否出现错误;判断模块,用于在所述执行过程出现错误时,判断当前错误次数是否已经达到最大重试次数;提示模块,用于在判断当前错误次数已经达到所述最大重试次数时,向所述发出所述执行过程出错的提示信息;以及第二执行模块,用于在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流。
进一步地,所述装置还包括:记录模块,用于在执行所述待执行数据流并判断执行过程是否出现错误之后,如果所述执行过程没有发生错误,则记录执行所述待执行数据流得到的执行结果;发送模块,用于将所述执行结果发送给所述用户;以及清零模块,用于将错误计数器中的计数清零。
进一步地,所述判断模块包括:获取子模块,用于获取预先设置的错误列表;查找子模块,用于从所述错误列表中查找所述错误;提取子模块,用于在所述错误列表中查找到所述错误时,提取所述错误列表中记录的所述错误的最大重试次数;发送子模块,用于在所述错误列表中没有查找到所述错误时,将所述错误发送给所述用户。
进一步地,所述第二执行模块包括:记录子模块,用于记录所述数据流的出错位置;执行子模块,用于从记录的所述出错位置开始继续执行所述待执行数据流。
根据发明实施例,通过该数据流的处理方法包括:获取待执行数据流和用于检测数据流的代码;封装待执行数据流和代码,得到封装程序;利用封装程序执行待执行数据流;在封装程序判断出待执行数据流出错时,对待执行数据流进行恢复;以及在封装程序判断出待执行数据流未出错时,输出执行待执行数据流得到的执行结果,将恢复数据流的代码进行封装,封装后的代码可以对不同数据流进行数据恢复,根据错误列表能够查找出错误的类型和最大重试次数,根据最大重试次数判断是否对数据流进行恢复,也就实现了不修改恢复数据流的代码的情况下对多个数据流进行错误恢复,解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据流的处理方法的流程图;
图2是根据本发明优选实施例的数据流的处理方法的流程图;以及
图3是根据本发明实施例的数据流的处理装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
名词解释:
Java:是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE,JavaME,JavaSE)的总称。
数据流:只能以事先规定好的顺序被读取一次的数据的一个序列。
对象:人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
类:具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类实际上就是一种数据类型。
本发明实施例提供了一种数据流的处理方法。本实施例的数据流的处理方法将错误数据流进行恢复的代码封装起来,在需要对不同的数据流进行错误时,更换数据流即可,而无需根据不同的数据流调整恢复错误数据流的代码,避免了反复修改代码所造成的错误,从而解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题,达到了避免恢复数据流时出错的效果。
图1是根据本发明实施例的数据流的处理方法的流程图。如图1所示,该数据流的处理方法包括如下步骤:
步骤S102,获取待执行数据流和用于检测数据流的代码。
步骤S104,封装待执行数据流和代码,得到封装程序。
步骤S106,利用封装程序执行待执行数据流。
步骤S108,在封装程序判断出待执行数据流出错时,对待执行数据流进行恢复。
步骤S110,在封装程序判断出待执行数据流未出错时,输出执行待执行数据流得到的执行结果。
将待执行数据流和代码进行封装之后,利用得到的封装程序执行该待执行数据流,在执行时如果出错,则执行恢复待执行数据流的动作,继续执行待执行数据流,如果待执行数据流未出错,则输出执行结果。如果需要对不同的数据流进行检测,改变待执行数据流即可,而无需修改用于检测数据流的代码,待执行数据流能够在封装程序中进行正常的执行,在得到执行结果后,将执行结果返回给用户。也就是说,用于恢复数据流的封装程序和待执行数据流为独立的两个部分,用于检测数据流的代码不会随着待执行数据流的变化而变化,不同的数据流可以采用相同的代码来进行数据流的恢复。
通过上述实施例,将恢复数据流的代码进行封装,在对不同的数据流进行恢复时,更换数据流就能完成错误的恢复,而无需更改代码,并且,封装程序中可以使数据流进行正常的执行,并且输出执行得到的结果,不仅避免了更改检测数据流的代码所导致的错误,还不影响数据流的正常执行,从而解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
优选地,利用封装程序执行待执行数据流包括:执行待执行数据流并判断执行过程是否出现错误。如果执行过程出现错误,则判断当前错误次数是否已经达到最大重试次数。在判断当前错误次数已经达到最大重试次数时,向用户发出执行过程出错的提示信息。以及在判断出当前错误次数小于最大重试次数时,继续执行待执行数据流。
用户发出对数据流执行操作的指令,封装程序获取该指令所对应的数据流,并执行该数据流。判断数据流是否出错,如果数据流出错,则判断当前错误的次数是否已经达到最大的出错次数,即最大重试次数,如果已经达到最大重试次数,则向用户发出执行过程出错的提示信息,如果当前错误的次数小于执行过程出错的提示信息,则继续执行该指令所对应的数据流。
在执行过程出错后,错误计数器记录一次错误,如果执行过程没有发生错误,则记录执行待执行数据流得到的执行结果。将执行结果发送给用户。以及将错误计数器中的计数清零。封装程序在执行该待执行数据流没有出错时,记录执行结果,并将执行结果发送给用户,即完成该数据流的执行。由于该待执行数据流已经执行完毕,可以将错误计数器中的计数清零。
优选地,由于封装程序可以对不同的数据流进行恢复,而不同的数据流可能对应不同的恢复次数,因此,可以预先设置错误列表,并在错误列表中记录错误的种类,以及每种错误的可恢复次数,即判断当前错误次数是否已经达到最大重试次数包括:获取预先设置的错误列表。从错误列表中查找错误。如果在错误列表中查找到错误,则提取错误列表中记录的错误的最大重试次数。如果在错误列表中没有查找到错误,则将错误发送给用户。
预先设置的错误列表中记录了数据流A的最大重试次数为3,还记录了数据流B的最大重试次数为5,在执行待执行数据流时出错时,从错误列表中查找该错误种类,如果能找到该错误种类,则判断该数据流的错误次数是否已经达到最大重试次数,如果没有查找到该错误种类,则将该错误发送给用户。在该数据流的错误次数达到最大重试次数时,将该错误发送给用户,在该数据流的错误次数未达到最大重试次数时,记录数据流的出错位置,并从记录的出错位置开始继续执行待执行数据流。
例如,数据流包括数据1、数据2、数据3、数据4和数据5,在执行到数据3时出错,则记录数据流执行到数据3,在错误次数未达到最大重试次数时从数据3开始继续执行该数据流。
通过上述实施例,将恢复数据流的代码进行封装,封装后的代码可以对不同数据流进行数据恢复,根据错误列表能够查找出错误的类型和最大重试次数,根据最大重试次数判断是否对数据流进行恢复,也就实现了不修改恢复数据流的代码的情况下对多个数据流进行错误恢复,解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
一下结合图2对本发明的数据流的处理方法进行说明。
步骤S201,用户发出对数据流进行操作的指令。
步骤S202,封装程序执行用户的命令,进行数据流操作。
步骤S203,封装程序获取数据流;
步骤S204,执行数据流时是否发生错误,如果未发生错误,则执行步骤S205;如果发生错误,则执行步骤S206.
步骤S205,执行数据流操作,得到结果数据,并重置错误计数器,既对错误计数器清零。
步骤S206,判断错误是否在错误列表中,如果该错误在错误列表中,则对错误计数器加一,如果该错误不在错误列表中,则向用户返回执行错误的提示,其中,错误列表为预先设置的错误列表。
步骤S207,判断错误计数器的计数是否达到最大重试次数,如果错误计数器的计数达到最大重试次数,则向用户返回执行错误的提示;否则,执行步骤S208。
步骤S208,记录当前数据流的位置,关闭当前数据流,并执行步骤S203,即开启新的数据流,并在当前数据流的位置继续执行。
本发明实施例还提供了一种数据流的处理装置。该装置可以通过计算机实现其功能。需要说明的是,本发明实施例的数据流的处理装置可以用于执行本发明实施例所提供的数据流的处理方法,本发明实施例的数据流的处理方法也可以通过本发明实施例所提供的数据流的处理装置来执行。
图3是根据本发明实施例的数据流的处理装置的示意图。如图3所示,该数据流的处理装置包括:获取单元10、封装单元30、执行单元50、恢复单元70和输出单元90。
获取单元10用于获取待执行数据流和用于检测数据流的代码
封装单元30用于封装待执行数据流和代码,得到封装程序
执行单元50用于利用封装程序执行待执行数据流
恢复单元70用于在封装程序判断出待执行数据流出错时,对待执行数据流进行恢复
输出单元90用于在封装程序判断出待执行数据流未出错时,输出执行待执行数据流得到的执行结果。
将待执行数据流和代码进行封装之后,利用得到的封装程序执行该待执行数据流,在执行时如果出错,则执行恢复待执行数据流的动作,继续执行待执行数据流,如果待执行数据流未出错,则输出执行结果。如果需要对不同的数据流进行检测,改变待执行数据流即可,而无需修改用于检测数据流的代码,待执行数据流能够在封装程序中进行正常的执行,在得到执行结果后,将执行结果返回给用户。也就是说,用于恢复数据流的封装程序和待执行数据流为独立的两个部分,用于检测数据流的代码不会随着待执行数据流的变化而变化,不同的数据流可以采用相同的代码来进行数据流的恢复。
通过上述实施例,将恢复数据流的代码进行封装,在对不同的数据流进行恢复时,更换数据流就能完成错误的恢复,而无需更改代码,并且,封装程序中可以使数据流进行正常的执行,并且输出执行得到的结果,不仅避免了更改检测数据流的代码所导致的错误,还不影响数据流的正常执行,从而解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
优选地,执行单元包括:第一执行模块,用于执行待执行数据流并判断执行过程是否出现错误;判断模块,用于在执行过程出现错误时,判断当前错误次数是否已经达到最大重试次数;提示模块,用于在判断当前错误次数已经达到最大重试次数时,向用户发出执行过程出错的提示信息;以及第二执行模块,用于在判断出当前错误次数小于最大重试次数时,继续执行待执行数据流。
用户发出对数据流执行操作的指令,封装程序获取该指令所对应的数据流,并执行该数据流。判断数据流是否出错,如果数据流出错,则判断当前错误的次数是否已经达到最大的出错次数,即最大重试次数,如果已经达到最大重试次数,则向用户发出执行过程出错的提示信息,如果当前错误的次数小于执行过程出错的提示信息,则继续执行该指令所对应的数据流。
在执行过程出错后,错误计数器记录一次错误,该装置还包括:记录模块,用于在执行待执行数据流并判断执行过程是否出现错误之后,如果执行过程没有发生错误,则记录执行待执行数据流得到的执行结果;发送模块,用于将执行结果发送给用户;以及清零模块,用于将错误计数器中的计数清零。
封装程序在执行该待执行数据流没有出错时,记录执行结果,并将执行结果发送给用户,即完成该数据流的执行。由于该待执行数据流已经执行完毕,可以将错误计数器中的计数清零。
优选地,由于封装程序可以对不同的数据流进行恢复,而不同的数据流可能对应不同的恢复次数,因此,可以预先设置错误列表,并在错误列表中记录错误的种类,以及每种错误的可恢复次数,即判断模块包括:获取子模块,用于获取预先设置的错误列表;查找子模块,用于从错误列表中查找错误;提取子模块,用于在错误列表中查找到错误时,提取错误列表中记录的错误的最大重试次数;发送子模块,用于在错误列表中没有查找到错误时,将错误发送给用户。
预先设置的错误列表中记录了数据流A的最大重试次数为3,还记录了数据流B的最大重试次数为5,在执行待执行数据流时出错时,从错误列表中查找该错误种类,如果能找到该错误种类,则判断该数据流的错误次数是否已经达到最大重试次数,如果没有查找到该错误种类,则将该错误发送给用户。在该数据流的错误次数达到最大重试次数时,将该错误发送给用户,在该数据流的错误次数未达到最大重试次数时,第二执行模块包括:记录子模块,用于记录数据流的出错位置;执行子模块,用于从记录的出错位置开始继续执行待执行数据流。
例如,数据流包括数据1、数据2、数据3、数据4和数据5,在执行到数据3时出错,则记录数据流执行到数据3,在错误次数未达到最大重试次数时从数据3开始继续执行该数据流。
通过上述实施例,将恢复数据流的代码进行封装,封装后的代码可以对不同数据流进行数据恢复,根据错误列表能够查找出错误的类型和最大重试次数,根据最大重试次数判断是否对数据流进行恢复,也就实现了不修改恢复数据流的代码的情况下对多个数据流进行错误恢复,解决了现有技术中在数据流发生错误时进行数据流恢复时容易出错的问题。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、移动终端、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据流的处理方法,其特征在于,包括:
获取待执行数据流和用于检测所述数据流的代码;
封装所述待执行数据流和所述代码,得到封装程序;
利用所述封装程序执行所述待执行数据流;
在所述封装程序判断出所述待执行数据流出错时,对所述待执行数据流进行恢复;以及
在所述封装程序判断出所述待执行数据流未出错时,输出执行所述待执行数据流得到的执行结果。
2.根据权利要求1所述的方法,其特征在于,利用所述封装程序执行所述待执行数据流包括:
执行所述待执行数据流并判断执行过程是否出现错误;
如果所述执行过程出现错误,则判断当前错误次数是否已经达到最大重试次数;
在判断所述当前错误次数已经达到所述最大重试次数时,向用户发出所述执行过程出错的提示信息;以及
在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流。
3.根据权利要求2所述的方法,其特征在于,在执行所述待执行数据流并判断执行过程是否出现错误之后,所述方法还包括:
如果所述执行过程没有发生错误,则记录执行所述待执行数据流得到的执行结果;
将所述执行结果发送给所述用户;以及
将错误计数器中的计数清零。
4.根据权利要求2所述的方法,其特征在于,判断当前错误次数是否已经达到所述最大重试次数包括:
获取预先设置的错误列表;
从所述错误列表中查找所述错误;
如果在所述错误列表中查找到所述错误,则提取所述错误列表中记录的所述错误的最大重试次数;
如果在所述错误列表中没有查找到所述错误,则将所述错误发送给所述用户。
5.根据权利要求2所述的方法,其特征在于,在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流包括:
记录所述数据流的出错位置;
从记录的所述出错位置开始继续执行所述待执行数据流。
6.一种数据流的处理装置,其特征在于,包括:
获取单元,用于获取待执行数据流和用于检测所述数据流的代码;
封装单元,用于封装所述待执行数据流和所述代码,得到封装程序;
执行单元,用于利用所述封装程序执行所述待执行数据流;
恢复单元,用于在所述封装程序判断出所述待执行数据流出错时,对所述待执行数据流进行恢复;以及
输出单元,用于在所述封装程序判断出所述待执行数据流未出错时,输出执行所述待执行数据流得到的执行结果。
7.根据权利要求6所述的装置,其特征在于,所述执行单元包括:
第一执行模块,用于执行所述待执行数据流并判断执行过程是否出现错误;
判断模块,用于在所述执行过程出现错误时,判断当前错误次数是否已经达到最大重试次数;
提示模块,用于在判断所述当前错误次数已经达到所述最大重试次数时,向用户发出所述执行过程出错的提示信息;以及
第二执行模块,用于在判断出所述当前错误次数小于所述最大重试次数时,继续执行所述待执行数据流。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
记录模块,用于在执行所述待执行数据流并判断执行过程是否出现错误之后,如果所述执行过程没有发生错误,则记录执行所述待执行数据流得到的执行结果;
发送模块,用于将所述执行结果发送给所述用户;以及
清零模块,用于将错误计数器中的计数清零。
9.根据权利要求7所述的装置,其特征在于,所述判断模块包括:
获取子模块,用于获取预先设置的错误列表;
查找子模块,用于从所述错误列表中查找所述错误;
提取子模块,用于在所述错误列表中查找到所述错误时,提取所述错误列表中记录的所述错误的最大重试次数;
发送子模块,用于在所述错误列表中没有查找到所述错误时,将所述错误发送给所述用户。
10.根据权利要求7所述的装置,其特征在于,所述第二执行模块包括:
记录子模块,用于记录所述数据流的出错位置;
执行子模块,用于从记录的所述出错位置开始继续执行所述待执行数据流。
CN201410769128.4A 2014-12-12 2014-12-12 数据流的处理方法和装置 Active CN104503904B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410769128.4A CN104503904B (zh) 2014-12-12 2014-12-12 数据流的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410769128.4A CN104503904B (zh) 2014-12-12 2014-12-12 数据流的处理方法和装置

Publications (2)

Publication Number Publication Date
CN104503904A true CN104503904A (zh) 2015-04-08
CN104503904B CN104503904B (zh) 2017-10-03

Family

ID=52945303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410769128.4A Active CN104503904B (zh) 2014-12-12 2014-12-12 数据流的处理方法和装置

Country Status (1)

Country Link
CN (1) CN104503904B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1450470A (zh) * 2002-04-10 2003-10-22 汤姆森许可贸易公司 数据传输设备和数据接收设备
US20120084523A1 (en) * 2010-09-30 2012-04-05 Littlefield Duncan A Data recovery operations, such as recovery from modified network data management protocol data
CN103049566A (zh) * 2012-12-31 2013-04-17 中国电子科技集团公司第十五研究所 一种通用型数据库备份及恢复方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1450470A (zh) * 2002-04-10 2003-10-22 汤姆森许可贸易公司 数据传输设备和数据接收设备
US20120084523A1 (en) * 2010-09-30 2012-04-05 Littlefield Duncan A Data recovery operations, such as recovery from modified network data management protocol data
CN103049566A (zh) * 2012-12-31 2013-04-17 中国电子科技集团公司第十五研究所 一种通用型数据库备份及恢复方法

Also Published As

Publication number Publication date
CN104503904B (zh) 2017-10-03

Similar Documents

Publication Publication Date Title
AU2018354949B2 (en) System and method for generating a blockchain application for different blockchain technologies
TWI696090B (zh) 模型訓練方法、檢測url的方法及裝置
CN108845930B (zh) 界面操作测试方法和装置、存储介质及电子装置
CN102866961B (zh) 具有扩展的数据和用户隐私保护的存储器转储
CN109347787A (zh) 一种身份信息的识别方法及装置
CN107783762A (zh) 界面生成方法、装置、存储介质和计算机设备
CN106897197B (zh) 错误日志的去重方法及装置
CN106897072A (zh) 业务工程调用方法、装置及电子设备
CN105426759A (zh) Url的合法性识别方法及装置
CN112672184A (zh) 一种视频审核及发布方法
CN107292168A (zh) 检测程序代码的方法及装置、服务器
Fan et al. Restart and random walk in local search for maximum vertex weight cliques with evaluations in clustering aggregation
CN106650610A (zh) 一种人脸表情数据收集方法及装置
CN104392169B (zh) 一种Native API函数重构方法和装置
CN113268243A (zh) 内存预测方法及装置、存储介质、电子设备
CN105930713A (zh) 一种验证码生成方法及终端
CN111460448B (zh) 一种恶意软件家族检测方法及装置
CN103336757A (zh) 硬件协议栈
US20200065233A1 (en) Automatically establishing significance of static analysis results
CN104503904A (zh) 数据流的处理方法和装置
CN107368738A (zh) 一种智能设备的防Root方法及装置
CN110008398B (zh) 一种数据分类管理推荐方法及装置
CN116822606A (zh) 一种异常检测模型的训练方法、装置、设备及存储介质
CN104272317A (zh) 在更安全的执行环境中标识并执行多个指令的子集
CN113703753B (zh) 用于产品开发的方法、装置和产品开发系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data stream processing method and data stream processing device

Effective date of registration: 20190531

Granted publication date: 20171003

Pledgee: Shenzhen Black Horse World Investment Consulting Co.,Ltd.

Pledgor: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Registration number: 2019990000503

PE01 Entry into force of the registration of the contract for pledge of patent right
CP02 Change in the address of a patent holder

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Patentee after: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Patentee before: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
PP01 Preservation of patent right

Effective date of registration: 20240604

Granted publication date: 20171003

PP01 Preservation of patent right