CN110543348B - 一种指令处理方法、系统、电子设备和存储介质 - Google Patents
一种指令处理方法、系统、电子设备和存储介质 Download PDFInfo
- Publication number
- CN110543348B CN110543348B CN201910841644.6A CN201910841644A CN110543348B CN 110543348 B CN110543348 B CN 110543348B CN 201910841644 A CN201910841644 A CN 201910841644A CN 110543348 B CN110543348 B CN 110543348B
- Authority
- CN
- China
- Prior art keywords
- instruction
- responded
- processing
- preset
- instructions
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种指令处理方法、系统、电子设备和存储介质,可以获得第一指令;基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;根据确定的所述处理策略对所述第一指令进行处理。本发明可以避免对重复指令进行多次响应,解决了由于多次响应重复指令对处理指令的电子设备的运行造成的负担,进而保证了处理指令的电子设备的正常运行。
Description
技术领域
本发明涉及指令控制领域,尤其涉及一种指令处理方法、系统、电子设备和存储介质。
背景技术
随着电子设备的普及,人们使用手机、平板电脑等电子设备的次数和时间也大幅增加。
用户使用电子设备的过程进行的各种操作常会触发某些指令,如网页刷新操作会触发网页数据请求指令。有些情况下,用户使用的电子设备会响应这些指令,另外一些情况下,其他电子设备会接收并响应这些指令。
当用户在短时间内通过操作多次触发多个重复的指令时,处理该指令的电子设备就需要分别对多个重复的指令进行响应。例如:用户在五秒的时间内点击了15次页面刷新按钮从而触发了15个重复的网页数据请求指令,某网站的服务器需要分别对这15个重复的指令进行响应。可以理解的是,由于需要分别对重复的每个指令进行响应,因此处理该指令的电子设备的系统负担较大,容易导致处理指令的电子设备出现运行异常。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种指令处理方法、系统、电子设备和存储介质,技术方案如下:
一种指令处理方法,所述方法执行于电子设备,所述方法包括:
获得第一指令;
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;
如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
根据确定的所述处理策略对所述第一指令进行处理。
可选的,所述基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件,包括:
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令。
可选的,所述基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令,包括:
确定所述第一指令是否与指令记录的至少一个指令的指令名和指令参数均相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令;其中,所述指令记录中包括正在被响应的指令以及所述正在被响应的指令的参数信息;
或,确定所述第一指令是否与指令记录的至少一个指令的指令名相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令。
可选的,所述方法还包括:
确定各正在被响应的指令在指令记录中的记录时长;
分别判断各正在被响应的指令的记录时长是否超过预设时长;
将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
可选的,所述根据确定的所述处理策略对所述第一指令进行处理,包括:
在确定的所述处理策略为所述禁止响应策略时,删除所述第一指令。
可选的,所述方法还包括:
如果所述第一指令不满足所述预设判断条件,则确定对所述第一指令的处理策略为允许响应策略以允许将所述第一指令发送到其他电子设备。
可选的,所述根据确定的所述处理策略对所述第一指令进行处理,包括:
在确定的所述处理策略为所述允许响应策略时,将所述第一指令发送到其他电子设备。
一种指令处理系统,所述系统应用于电子设备,所述系统包括:指令获得单元、判断单元、第一策略确定单元和处理单元,
所述指令获得单元,用于获得第一指令;
所述判断单元,用于基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;
所述第一策略确定单元,用于在所述第一指令满足所述预设判断条件时,确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
所述处理单元,用于根据确定的所述处理策略对所述第一指令进行处理。
一种电子设备,包括:处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
获得第一指令;
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;
如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
根据确定的所述处理策略对所述第一指令进行处理。
一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上述任一项所述的指令处理方法。
借由上述技术方案,本发明提供的一种指令处理方法、系统、电子设备和存储介质,可以获得第一指令;基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;根据确定的所述处理策略对所述第一指令进行处理。本实施例可以避免对重复指令进行多次响应,解决了由于多次响应重复指令对处理指令的电子设备的运行造成的负担,进而保证了处理指令的电子设备的正常运行。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在附图中:
图1示出了本发明实施例提供的一种指令处理方法的流程示意图;
图2示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图3示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图4示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图5示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图6示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图7示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图8示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图9示出了本发明实施例提供的另一种指令处理方法的流程示意图;
图10示出了本发明实施例提供的一种指令处理系统的结构示意图;
图11示出了本发明实施例提供的另一种指令处理系统的结构示意图;
图12示出了本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本实施例提供的一种指令处理方法,所述方法执行于电子设备,所述方法可以包括:
S100、获得第一指令。
本实施例中的电子设备可以是搭载有React Native开发环境的设备。ReactNative(简称RN)是开源的跨平台移动应用开发框架。具体的,搭载有React Native开发环境的设备可以包括:RN后台服务器、JS(JavaScript)端设备和Native端设备。Native端设备可以为运行安卓系统的电子设备,也可以为运行IOS系统的电子设备。需要注意的是,RN后台服务器、JS端设备和Native端设备可以为实体设备或虚拟设备。RN后台服务器、JS端设备和Native端设备可以位于同一电子设备中。
在一可选实施方式中,本实施例中的JS(JavaScript)端设备可以为移动设备(如手机、平板电脑、智能穿戴设备等)、PC等终端设备。图1所示方法可以应用于移动设备、PC等终端设备中。
第一指令可以是根据用户的操作触发的指令。用户的操作可以是对移动设备进行点击或滑动等手势触控。例如,移动设备的显示界面中存在一个虚拟按键,当用户点击该虚拟按键之后,本实施例可以获得与该虚拟按键对应的功能匹配的第一指令。可以理解的是,用户的操作也可以是在PC端进行的鼠键交互操作。例如,用户通过鼠标点击PC端上的虚拟发送按钮,本实施例可以获得与该虚拟发送按钮对应的第一指令。
第一指令可以包括用户认证指令、应用数据下载指令、Native调用请求、对服务器的访问指令在内的至少一种指令。可选的,第一指令可以是JS端设备与RN后台服务器进行交互时的指令,也可以是JS端设备与Native端设备进行交互时的指令。其中,上述交互可以包括数据传输、页面跳转、状态同步在内的至少一种。
在本实施例中,JS端设备与RN后台服务器之间的交互以及JS端设备与Native端设备之间的交互都可以通过RN交互出口进行,因此本实施例可以从该RN交互出口中获得第一指令。可选的,JS端设备与RN后台服务器进行交互的RN交互出口可以为:QYRequest;JS端设备与Native端设备进行交互的RN交互出口可以为:NativeiBridge。
S200、基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件。
正在被响应的指令可以是在获得第一指令之前,本实施例获得的其他指令中尚未响应完成的指令。需要注意的是,正在被响应的指令可以是正在执行与该正在被响应的指令对应功能的指令,也可以是等待执行与该正在被响应的指令对应功能的指令。正在被响应的指令的参数信息可以包括指令名和指令参数在内的至少一种信息。
本实施例可以应用在JS端,用户在第一时刻通过JS端将指令发送至Native端,在第二时刻JS端收到Native端对该指令响应的回复,则在第一时刻与第二时刻之间,该指令为正在被响应的指令。可选的,JS端可以对该指令的参数信息进行记录。
本实施例中的正在被响应的指令以及正在被响应的指令的参数信息可以保存在指令记录(Map)中。本实施例可以基于指令记录中的各指令和与各指令对应的参数信息,确定第一指令是否满足预设判断条件。可选的,本实施例可以在指令记录中的正在被响应的指令对应的功能执行完毕后,将该指令从指令记录中删除。
预设判断条件可以是技术人员根据实际需要自定义设置的指令处理条件。例如,预设判断条件可以是判断第一指令是否为执行功能为“跳转页面至A页面”的指令。
可选的,本实施例可以根据React Native交互出口统一的特性,将本实施例的技术方案在应用框架层实现。本实施例可以将预设判断条件设计在应用框架层,从而能够统一设置预设判断条件。本实施例可以通过统一设置的预设判断条件对不同功能点的指令进行重复响应控制,可以降低具体开发时的逻辑复杂性,同时保证系统交互操作的高性能和正确性。当同一应用程序不同功能点的开发人员在应用框架层下进行功能设计,就无需在功能设计中增加对指令重复响应的保护措施,避免有任一功能开发人员遗漏了对指令重复响应的保护措施的设计,造成应用程序崩溃。为了便于理解,此处进行举例说明:在开发人员进行应用程序开发功能点时,不同的开发人员负责不同功能点的设计,在进行设计时都会设计同样的预设判断条件,如果有任何一方遗漏了设计预设判断条件,都会造成应用程序的崩溃。但是,只要在应用框架层设置了预设判断条件,不同功能点的开发人员在此应用框架层内设计功能点时,就无需再各自设计预设判断条件,设计出的不同功能点都直接遵守应用框架层中的预设判断条件。
本实施例中的预设判断条件可以是判断第一指令是否为重复的指令。例如,本实施例可以通过第一指令的参数信息与指令记录中的指令的参数信息进行对比,确定指令记录中是否存在与第一指令的指令参数相同的指令,如果存在,则确定第一指令为重复的指令。本实施例中的预设判断条件也可以是判断第一指令是否为冲突的指令,例如,指令记录中的,某个正在被响应的指令为“使用M线路下载资源N”,若第一指令为“使用M线路下载资源R”,则第一指令与该指令记录中的该指令冲突。
S300、如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备。
当第一指令满足预设判断条件时,本实施例可以确定当某一电子设备接收第一指令后,会对该电子设备的正常运行造成负担。因此,本实施例通过禁止响应策略,禁止满足预设判断条件的第一指令发送到其他电子设备,防止第一指令对该其他电子设备的正常运行造成影响。可以理解的是,其他电子设备可以为Native设备,也可以为RN后台服务器。
可选的,本实施例在第一指令不满足预设判断条件时,可以按照现有处理方法对其进行正常处理。例如,将不满足预设判断条件的第一指令,发送至其他电子设备。
S400、根据确定的所述处理策略对所述第一指令进行处理。
具体的,在处理策略为禁止响应策略时,本实施例可以通过删除第一指令或使第一指令无效的方式禁止第一指令发送至其他电子设备。
本实施例提供的一种指令处理方法,可以获得第一指令;基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;根据确定的所述处理策略对所述第一指令进行处理。本实施例可以避免对重复指令进行多次响应,解决了由于多次响应重复指令对处理指令的电子设备的运行造成的负担,进而保证了处理指令的电子设备的正常运行。
可选的,基于图1所示的方法,如图2所示,本实施例提供的另一种指令处理方法,步骤S200可以包括:
S210、基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令。
本实施例可以根据指令记录中的正在被响应的指令以及所述正在被响应的指令的参数信息,确定第一指令是否已经在该指令记录中存在。具体的,本实施例可以在指令记录中查找与第一指令重复的正在被响应的指令。例如,根据第一指令的参数信息,在指令记录中查找与第一指令的参数信息部分或全部相同的指令,若查找到,则确定第一指令和该指令为重复的指令。本实施例通过确定第一指令是否为重复指令的方式,防止重复指令发送至电子设备中,导致第一指令对该电子设备的正常运行造成影响。
可选的,基于图2所示的方法,如图3所示,本实施例提供的另一种指令处理方法,步骤S210可以包括:
S211、确定所述第一指令是否与指令记录的至少一个指令的指令名和指令参数均相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令,其中,所述指令记录中包括正在被响应的指令以及所述正在被响应的指令的参数信息。
本实施例可以将指令名相同且指令参数相同的两个指令确定为重复的指令。指令名可以为接收与该指令名对应的指令的指令接收方(后端设备的服务接口)的地址信息。例如,后端设备中提供某服务的接口地址,当某指令为该服务的调用指令时,指令名为该后端设备提供该服务的接口地址。后端设备可以为Native设备,也可以为RN后台服务器。本实施例应用在前端设备中,前端设备可以包括用户使用的PC端、移动设备。
可选的,当本实施例是与Native端进行交互时,指令名可以为在与Native端交互前,本实施例与Native端共同确定的操作标识符。其中,不同的标识符标识不同的操作,例如,del(删)、insert(增)、update(改)。
指令参数可以为与该指令参数对应的指令被响应时所需要的数据。例如,指令所操作的对象的信息(如对象标识)、指令的重复次数、指令的返回地址和删除某行数据等。指令参数可以通过参数名和参数值对应的方式(例如:键值对)保存在指令中,本实施例可以通过查找第一指令的参数名的方式找到与该参数名对应的参数值,从而判断第一指令的参数值是否与指令记录中的至少一个指令的参数值相同。
可选的,基于图2所示的方法,如图4所示,本实施例提供的另一种指令处理方法,步骤S210可以包括:
S212、确定所述第一指令是否与指令记录的至少一个指令的指令名相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令。
本实施例可以将指令名相同的两个指令确定为重复的指令。可以理解的是,本实施例可以对确定重复指令的依据进行切换。例如,将指令名相同且指令参数相同的两个指令确定为重复的指令作为默认的确定重复指令条件,当指令记录中存在的指令达到预设阈值时,切换确定重复指令条件为将指令名相同的两个指令确定为重复的指令。本实施例通过灵活切换确定重复指令条件,可以使本实施例适应复杂多变的实际应用环境,在保证处理指令的电子设备的正常运行的前提下,提升该电子设备的处理指令的效率。
可选的,基于图1所示的方法,如图5所示,本实施例提供的另一种指令处理方法,还可以包括:
S500、确定各正在被响应的指令在所述指令记录中的记录时长。
为了防止指令记录中的某个指令由于数据库异常等原因没有响应完成,导致该指令在指令记录中一直存在,进而影响获得的与该指令重复的第一指令无法发送到其他电子设备。本实施例可以确定指令记录中的各指令的记录时长,以免指令记录中的某指令的记录时长过长,导致与该指令对应的功能或服务处于交互死锁的状态。
S600、分别判断各正在被响应的指令的记录时长是否超过预设时长。
本实施例可以对指令记录中的各指令设置预设时长,并统计指令记录中的各指令的记录时长是否超过预设时长。预设时长可以是技术人员根据以往指令从开始响应至响应结束的时长确定并设置的,也可以是电子设备根据历史指令响应时长确定的。可以理解的是,由于各指令对应的功能或服务可能不同,对于不同功能或服务的指令的预设时长可以不同。例如,本实施例可以设置指令A的预设时长为10秒,设置指令B的预设时长为6秒。
S700、将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
某指令的预设时长可以是该指令正在导致与该指令对应的功能或服务处于交互死锁的状态的极限值。例如,指令C正常完成响应的时长为12秒,则该指令的预设时长可以设置为20秒,当指令C在指令记录中的记录时长超过20秒时,说明指令C对应的功能或服务可能处于交互死锁的状态,需要将指令记录中的指令C删除,避免与指令C重复的第一指令永远无法发送至其他电子设备导致指令C对应的功能或服务永远无法使用。可以理解的是,预设时长可以根据实际需要进行设置,本实施例在此不做进一步的限定。
可以理解的是,步骤S500至S700只要指令记录中存在指令都会执行,图5所示只是其中一种执行情况。
可选的,基于图1所示的方法,如图6所示,本实施例提供的另一种指令处理方法,S400可以包括:
S410、在确定的所述处理策略为所述禁止响应策略时,删除所述第一指令。
本实施例通过删除第一指令,避免第一指令发送至其他电子设备,防止发送第一指令至其他电子设备后对该电子设备的正常运行造成影响,同时通过删除第一指令,可以减少冗余指令占用存储空间。
可选的,基于图1所示的方法,如图7所示,本实施例提供的另一种指令处理方法,还可以包括:
S800、如果所述第一指令不满足所述预设判断条件,则确定对所述第一指令的处理策略为允许响应策略以允许将所述第一指令发送到其他电子设备。
可以理解的是,当第一指令不满足预设判断条件时,说明指令记录中不存在与第一指令重复的指令。在此情况下,本实施例可以允许将第一指令发送到其他电子设备中,以使接收第一指令的电子设备对第一指令进行响应,实现与第一指令对应的功能或服务。
可选的,基于图6和图7所示的方法,如图8所示,本实施例提供的另一种指令处理方法,步骤S400可以包括:
S420、在确定的所述处理策略为所述允许响应策略时,将所述第一指令发送到其他电子设备。
可选的,本实施例可以在将第一指令发送到其他电子设备以后,将第一指令的参数信息记录在指令记录中,即当前的第一指令为正在被响应的指令。
为了便于理解本实施例的整体的技术方案,此处结合图9进行举例说明:如图9所示,本实施例提供的另一种指令处理方法,可以包括:
S10、获得第一指令
S11、判断该第一指令是否与指令记录中的至少一个指令为重复指令,如果是,则执行步骤S13,如果不是则执行步骤S12;
S12、将该第一指令发送至Native端;
S13、将该第一指令删除;
S14、判断第一指令的记录时长是否超过预设时长。如果超过,则执行步骤S16,如果没超过则返回执行步骤S14;
可选的,本实施例可以按照预设时间间隔执行步骤S14。
S15、接收Native端反馈的第一指令响应完毕信息;
S16、将指令记录中的第一指令的参数信息删除。
需要注意的是,步骤S15可以与步骤S14同时进行。
与上述方法实施例相对应,本实施例还提供一种指令处理系统,所述系统应用于电子设备,所述系统的结构可以如图10所示,包括:指令获得单元100、判断单元200、第一策略确定单元300和处理单元400。
所述指令获得单元100,用于获得第一指令。
本实施例中的电子设备可以是搭载有React Native开发环境的设备。ReactNative(简称RN)是开源的跨平台移动应用开发框架。具体的,搭载有React Native开发环境的设备可以包括:RN后台服务器、JS(JavaScript)端设备和Native端设备。Native端设备可以为运行安卓系统的电子设备,也可以为运行IOS系统的电子设备。需要注意的是,RN后台服务器、JS端设备和Native端设备可以为实体设备或虚拟设备。RN后台服务器、JS端设备和Native端设备可以位于同一电子设备中。
在一可选实施方式中,本实施例中的JS(JavaScript)端设备可以为移动设备(如手机、平板电脑、智能穿戴设备等)、PC等终端设备。图1所示方法可以应用于移动设备、PC等终端设备中。
第一指令可以是根据用户的操作触发的指令。用户的操作可以是对移动设备进行点击或滑动等手势触控。
第一指令可以包括用户认证指令、应用数据下载指令、Native调用请求、对服务器的访问指令在内的至少一种指令。可选的,第一指令可以是JS端设备与RN后台服务器进行交互时的指令,也可以是JS端设备与Native端设备进行交互时的指令。其中,上述交互可以包括数据传输、页面跳转、状态同步在内的至少一种。
在本实施例中,JS端设备与RN后台服务器之间的交互以及JS端设备与Native端设备之间的交互都可以通过RN交互出口进行,因此本实施例可以从该RN交互出口中获得第一指令。可选的,JS端设备与RN后台服务器进行交互的RN交互出口可以为:QYRequest;JS端设备与Native端设备进行交互的RN交互出口可以为:NativeiBridge。
所述判断单元200,用于基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件。
正在被响应的指令可以是在获得第一指令之前,本实施例获得的其他指令中尚未响应完成的指令。需要注意的是,正在被响应的指令可以是正在执行与该正在被响应的指令对应功能的指令,也可以是等待执行与该正在被响应的指令对应功能的指令。正在被响应的指令的参数信息可以包括指令名和指令参数在内的至少一种信息。
所述第一策略确定单元300,用于在所述第一指令满足所述预设判断条件时,确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备。
当第一指令满足预设判断条件时,本实施例可以确定当某一电子设备接收第一指令后,会对该电子设备的正常运行造成负担。因此,本实施例通过禁止响应策略,禁止满足预设判断条件的第一指令发送到其他电子设备,防止第一指令对该其他电子设备的正常运行造成影响。可以理解的是,其他电子设备可以为Native设备,也可以为RN后台服务器。
可选的,本实施例在第一指令不满足预设判断条件时,第一策略确定单元300可以按照现有处理方法对其进行正常处理。例如,将不满足预设判断条件的第一指令,发送至其他电子设备。
所述处理单元400,用于根据确定的所述处理策略对所述第一指令进行处理。
具体的,在处理策略为禁止响应策略时,本实施例可以通过删除第一指令或使第一指令无效的方式禁止第一指令发送至其他电子设备。
本实施例提供的一种指令处理系统,可以获得第一指令;基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;根据确定的所述处理策略对所述第一指令进行处理。本实施例可以避免对重复指令进行多次响应,解决了由于多次响应重复指令对处理指令的电子设备的运行造成的负担,进而保证了处理指令的电子设备的正常运行。
可选的,所述判断单元200具体用于基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令。
本实施例可以根据指令记录中的正在被响应的指令以及所述正在被响应的指令的参数信息,确定第一指令是否已经在该指令记录中存在。具体的,本实施例可以在指令记录中查找与第一指令重复的正在被响应的指令。
可选的,所述判断单元200具体用于确定所述第一指令是否与指令记录的至少一个指令的指令名和指令参数均相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令,其中,所述指令记录中包括正在被响应的指令以及所述正在被响应的指令的参数信息。
本实施例可以将指令名相同且指令参数相同的两个指令确定为重复的指令。指令名可以为接收与该指令名对应的指令的指令接收方(后端设备的服务接口)的地址信息。例如,后端设备中提供某服务的接口地址,当某指令为该服务的调用指令时,指令名为该后端设备提供该服务的接口地址。后端设备可以为Native设备,也可以为RN后台服务器。本实施例应用在前端设备中,前端设备可以包括用户使用的PC端、移动设备。
可选的,当本实施例是与Native端进行交互时,指令名可以为在与Native端交互前,本实施例与Native端共同确定的操作标识符。其中,不同的标识符标识不同的操作,例如,del(删)、insert(增)、update(改)。
指令参数可以为与该指令参数对应的指令被响应时所需要的数据。例如,指令所操作的对象的信息(如对象标识)、指令的重复次数、指令的返回地址和删除某行数据等。指令参数可以通过参数名和参数值对应的方式(例如:键值对)保存在指令中,本实施例可以通过查找第一指令的参数名的方式找到与该参数名对应的参数值,从而判断第一指令的参数值是否与指令记录中的至少一个指令的参数值相同。
可选的,所述判断单元200具体用于确定所述第一指令是否与指令记录的至少一个指令的指令名相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令。
本实施例可以将指令名相同的两个指令确定为重复的指令。可以理解的是,本实施例可以对确定重复指令的依据进行切换。
可选的,如图11所示,本实施例提供的另一种指令处理系统该系统还可以包括:记录时长确定单元500、指令时长判断单元600和指令删除单元700。
所述记录时长单元,用于确定各正在被响应的指令在指令记录中的记录时长。
为了防止指令记录中的某个指令由于数据库异常等原因没有响应完成,导致该指令在指令记录中一直存在,进而影响获得的与该指令重复的第一指令无法发送到其他电子设备。本实施例可以确定指令记录中的各指令的记录时长,以免指令记录中的某指令的记录时长过长,导致与该指令对应的功能或服务处于交互死锁的状态。
所述指令时长判断单元600,用于分别判断各正在被响应的指令的记录时长是否超过预设时长。
本实施例可以对指令记录中的各指令设置预设时长,并统计指令记录中的各指令的记录时长是否超过预设时长。预设时长可以是技术人员根据以往指令从开始响应至响应结束的时长确定并设置的,也可以是电子设备根据历史指令响应时长确定的。可以理解的是,由于各指令对应的功能或服务可能不同,对于不同功能或服务的指令的预设时长可以不同。
所述指令删除单元700,用于将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
某指令的预设时长可以是该指令正在导致与该指令对应的功能或服务处于交互死锁的状态的极限值。可以理解的是,预设时长可以根据实际需要进行设置,本实施例在此不做进一步的限定。
所述处理单元400具体用于在所述第一策略确定单元300确定的所述处理策略为所述禁止响应策略时,删除所述第一指令。
本实施例通过删除第一指令,避免第一指令发送至其他电子设备,防止发送第一指令至其他电子设备后对该电子设备的正常运行造成影响,同时通过删除第一指令,可以减少冗余指令占用存储空间。
所述第一策略确定单元300用于在所述第一指令不满足所述预设判断条件,确定对所述第一指令的处理策略为允许响应策略以允许将所述第一指令发送到其他电子设备。
可以理解的是,当第一指令不满足预设判断条件时,说明指令记录中不存在与第一指令重复的指令。在此情况下,本实施例可以允许处理单元400将第一指令发送到其他电子设备中,以使接收第一指令的电子设备对第一指令进行响应,实现与第一指令对应的功能或服务。
所述处理单元400具体用于在所述第一策略确定单元300确定的所述处理策略为所述允许响应策略时,将所述第一指令发送到其他电子设备。
可选的,本实施例可以在处理单元400将第一指令发送到其他电子设备以后,将第一指令的参数信息记录在指令记录中,即当前的第一指令为正在被响应的指令。
可选的,如图12所示,本实施例提供的一种电子设备,可以包括:处理器12和存储器11;
其中,所述处理器12用于执行所述存储器11中存储的程序;
所述存储器11用于存储程序,所述程序至少用于:
获得第一指令;
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;
如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
根据确定的所述处理策略对所述第一指令进行处理。
可选的,如图12所示,处理器12与存储器11可以通过总线13进行通信连接。
本实施例提供的一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器12加载并执行时,实现如上述任一项所述的指令处理方法。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种指令处理方法,其特征在于,所述方法执行于电子设备,所述方法包括:
获得第一指令;
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;当指令记录中存在的指令的数量达到预设阈值时,切换确定所述第一指令是否满足预设判断条件的依据;
如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
根据确定的所述处理策略对所述第一指令进行处理;
确定各正在被响应的指令在指令记录中的记录时长;
分别判断各正在被响应的指令的记录时长是否超过预设时长;其中,所述预设时长根据历史指令响应时长确定,且,不同功能或服务的指令对应的预设时长不同;
将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
2.根据权利要求1所述的方法,其特征在于,所述基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件,包括:
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令。
3.根据权利要求2所述的方法,其特征在于,所述基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否和正在被响应的指令中的至少一个指令为重复的指令,包括:
确定所述第一指令是否与指令记录的至少一个指令的指令名和指令参数均相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令;其中,所述指令记录中包括正在被响应的指令以及所述正在被响应的指令的参数信息;
或,确定所述第一指令是否与指令记录的至少一个指令的指令名相同,如果是,则确定所述第一指令和正在被响应的指令中的至少一个指令为重复的指令。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据确定的所述处理策略对所述第一指令进行处理,包括:
在确定的所述处理策略为所述禁止响应策略时,删除所述第一指令。
5.根据权利要求1至3中任一项所述的方法,其特征在于,还包括:
如果所述第一指令不满足所述预设判断条件,则确定对所述第一指令的处理策略为允许响应策略以允许将所述第一指令发送到其他电子设备。
6.根据权利要求5所述的方法,其特征在于,所述根据确定的所述处理策略对所述第一指令进行处理,包括:
在确定的所述处理策略为所述允许响应策略时,将所述第一指令发送到其他电子设备。
7.一种指令处理系统,其特征在于,所述系统应用于电子设备,所述系统包括:指令获得单元、判断单元、第一策略确定单元和处理单元,
所述指令获得单元,用于获得第一指令;
所述判断单元,用于基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;当指令记录中存在的指令的数量达到预设阈值时,切换确定所述第一指令是否满足预设判断条件的依据;
所述第一策略确定单元,用于在所述第一指令满足所述预设判断条件时,确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
所述处理单元,用于根据确定的所述处理策略对所述第一指令进行处理;
其中,该系统还包括:记录时长确定单元、指令时长判断单元和指令删除单元;
所述记录时长单元,用于确定各正在被响应的指令在指令记录中的记录时长;
所述指令时长判断单元,用于分别判断各正在被响应的指令的记录时长是否超过预设时长;其中,所述预设时长根据历史指令响应时长确定,且,不同功能或服务的指令对应的预设时长不同;
所述指令删除单元,用于将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
8.一种电子设备,其特征在于,包括:处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
获得第一指令;
基于正在被响应的指令以及所述正在被响应的指令的参数信息,确定所述第一指令是否满足预设判断条件;当指令记录中存在的指令的数量达到预设阈值时,切换确定所述第一指令是否满足预设判断条件的依据;
如果所述第一指令满足所述预设判断条件,则确定对所述第一指令的处理策略为禁止响应策略以禁止将所述第一指令发送到其他电子设备;
根据确定的所述处理策略对所述第一指令进行处理;
确定各正在被响应的指令在指令记录中的记录时长;
分别判断各正在被响应的指令的记录时长是否超过预设时长;其中,所述预设时长根据历史指令响应时长确定,且,不同功能或服务的指令对应的预设时长不同;
将记录时长超过所述预设时长的正在被响应的指令从所述指令记录中删除。
9.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上权利要求1至6任一项所述的指令处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841644.6A CN110543348B (zh) | 2019-09-06 | 2019-09-06 | 一种指令处理方法、系统、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841644.6A CN110543348B (zh) | 2019-09-06 | 2019-09-06 | 一种指令处理方法、系统、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110543348A CN110543348A (zh) | 2019-12-06 |
CN110543348B true CN110543348B (zh) | 2023-03-24 |
Family
ID=68712758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910841644.6A Active CN110543348B (zh) | 2019-09-06 | 2019-09-06 | 一种指令处理方法、系统、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543348B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112929379B (zh) * | 2021-02-22 | 2023-03-24 | 深圳供电局有限公司 | 一种智能录波器远程运维指令防御方法及系统 |
CN115186306B (zh) * | 2022-09-13 | 2023-05-16 | 深圳市汇顶科技股份有限公司 | 指令处理方法、装置、安全单元、终端设备及存储介质 |
CN116824724A (zh) * | 2023-08-30 | 2023-09-29 | 深圳市永兴元科技股份有限公司 | 网络打卡计时管理方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040209A (zh) * | 2018-07-23 | 2018-12-18 | 深圳市牛鼎丰科技有限公司 | 拦截重复请求的方法、装置、计算机设备及存储介质 |
CN109857575A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 接口调用方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180276213A1 (en) * | 2017-03-27 | 2018-09-27 | Home Depot Product Authority, Llc | Methods and system for database request management |
CN107943269B (zh) * | 2017-11-21 | 2021-01-01 | Oppo广东移动通信有限公司 | 调度作业控制方法、装置、终端设备及存储介质 |
-
2019
- 2019-09-06 CN CN201910841644.6A patent/CN110543348B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040209A (zh) * | 2018-07-23 | 2018-12-18 | 深圳市牛鼎丰科技有限公司 | 拦截重复请求的方法、装置、计算机设备及存储介质 |
CN109857575A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 接口调用方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
react native优化重复点击、阻止反复点击;weixin_34096182;《https://blog.csdn.net/weixin_34096182/article/details/91378349》;20190603;第一页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110543348A (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110543348B (zh) | 一种指令处理方法、系统、电子设备和存储介质 | |
CN104246759A (zh) | 应用程序接口测试服务 | |
US11647086B2 (en) | System and method for maintaining user session continuity across multiple devices and/or multiple platforms | |
CN109144392B (zh) | 一种处理手势冲突的方法、装置及电子设备 | |
CN113253878B (zh) | 触摸屏的报点确定方法、装置、电子设备及存储介质 | |
WO2014194654A1 (en) | Method and apparatus for page view switching | |
CN113407086B (zh) | 对象拖拽方法、设备和存储介质 | |
CN111641554B (zh) | 一种消息处理方法、装置及计算机可读存储介质 | |
CN113282580A (zh) | 用于执行定时任务的方法、存储介质及服务器 | |
US10503430B2 (en) | Method and device for clearing data and electronic device | |
US10839066B1 (en) | Distinguishing human from machine input using an animation | |
CN112286559A (zh) | 一种车载智能终端的升级方法及装置 | |
CN109271266B (zh) | 文件传输方法、装置及终端设备 | |
CN117112124A (zh) | Kubernetes对象的参数校验方法、服务器及终端 | |
US20210026913A1 (en) | Web browser control feature | |
CN111193804A (zh) | 分布式存储方法及装置、网络节点及存储介质 | |
KR20230017329A (ko) | 동작 응답 방법, 동작 응답 장치, 전자장비, 저장 매체 및 컴퓨터 프로그램 | |
CN110471906A (zh) | 数据库切换方法、装置及设备 | |
CN114531340A (zh) | 日志获取方法、装置、电子设备、芯片及存储介质 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 | |
KR102193157B1 (ko) | 컨테이너 서비스 제공을 위한 장치 및 방법 | |
CN112527276A (zh) | 一种可视化编程工具中的数据更新方法、装置及终端设备 | |
CN112231290A (zh) | 一种本地日志的处理方法、装置、设备及存储介质 | |
CN107209882B (zh) | 对于处在管理之下的设备的多阶段撤销注册 | |
CN111090515A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |