CN101140529A - 一种基于同步事件多路分离器的多事件处理方法及装置 - Google Patents
一种基于同步事件多路分离器的多事件处理方法及装置 Download PDFInfo
- Publication number
- CN101140529A CN101140529A CNA2007101762411A CN200710176241A CN101140529A CN 101140529 A CN101140529 A CN 101140529A CN A2007101762411 A CNA2007101762411 A CN A2007101762411A CN 200710176241 A CN200710176241 A CN 200710176241A CN 101140529 A CN101140529 A CN 101140529A
- Authority
- CN
- China
- Prior art keywords
- event
- sources
- source
- demultiplexer
- synchronous
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Time-Division Multiplex Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种基于同步事件多路分离器的多事件处理方法及装置。方法包括:将多个事件源标识为多个对应的源,利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;按照一设定的规则将多个所述源进行排列;利用一同步事件多路分离器对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;通过对所述检测结果进行检测判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。利用本发明的上述方法以及装置,可统一感知多个不同事件源的事件,并对需要检测的特定事件执行对应的操作。且通过对多个源根据需要设定的优先级别,可优先对特定源的特定事件进行检测,以提高检测效率。
Description
技术领域
本发明涉及事件驱动通信领域,特别是涉及一种基于同步事件多路分离器实现多类事件按优先级处理的方法及装置。
背景技术
一般的事件驱动模型包括三大要素:事件源、侦听器、事件处理程序。事件源即为能够产生事件的源体,是一组可被操作的组件,当产生事件时,可产生相应的事件对象;侦听器用于侦听事件,是能够接收事件源通知的对象,侦听器与事件源具有关联关系,侦听器可用于侦听不同的事件;事件处理程序是用于处理事件的对象。
事件驱动的应用很多,例如GUI(图形用户接口)的应用程序都是事件驱动的,这些事件可以分成两大类:大部分来自于用户,还有一些来自于系统内部。用户事件包括键盘事件、鼠标事件等;内部事件包括定时事件、Socket(套接字)事件等。在没有任何事件的情况下,应用程序处于睡眠状态,当有事件发生时,应用程序则处理这些事件。
同步事件多路分离器是OS(操作系统)提供的一个函数,可以用于在一组事件源上等待特定事件的发生。通常,同步事件多路分离器被用作“反应式服务器”事件循环的基本构件;它以一种“连续”而且“有序”的方式,对“来自客户的事件”进行检查并做出反应。
发明内容
本发明提供了一种基于同步事件多路分离器的多事件处理方法及装置,用于利用一同步事件多路分离器以实现对多个不同事件源同时进行事件处理。
为了实现上述目的,本发明提供了一种基于同步事件多路分离器的多事件处理方法,用于在一信息系统中处理多个事件源的事件,包括:
步骤一,将多个所述事件源标识为多个对应的源,利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;
步骤二,按照一设定的规则将多个所述源进行排列;
步骤三,利用一同步事件多路分离器对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;
步骤四,通过对所述检测结果进行检测判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。
所述步骤一进一步包括:设定每个源的优先级。
所述步骤二进一步包括:依照所述优先级由高到低的顺序排列多个所述源。
所述步骤四进一步包括:依照多个所述源的优先级由高到低的顺序,判断所述发生的事件是否为该高优先级的源所欲检测的特定事件,如果是,执行相应的处理方式,如果不是,判断是否为下一较低优先级的源所欲检测的特定事件,循环直至对所有源判断完毕。
所述步骤四之后继续执行步骤三,直至一设定事件发生,执行退出。
本发明还公开了一种基于同步事件多路分离器的多事件处理装置,用于在一信息系统中处理多个事件源的事件,包括:
一标识单元,用于将多个所述事件源标识为多个对应的源,并利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;
一排列单元,用于按照一设定的规则将多个所述源进行排列;
一同步事件多路分离器,用于对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;
一判断执行单元,用于通过对所述检测结果进行检测判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。
所述标识单元进一步包括一优先级设定单元,用于设定每个源的优先级。
所述排列单元依照所述优先级由高到低的顺序排列多个所述源。
所述判断执行单元进一步包括:一判断单元以及一执行单元;
所述判断单元用于依照多个所述源的优先级由高到低的顺序,判断所述发生的事件是否为该高优先级的源所欲检测的特定事件,如果是,调用所述执行单元,所述执行单元用以执行相应的处理方式,如果不是,继续由所述判断单元判断是否为下一较低优先级的源所欲检测的特定事件,循环直至对所有源判断完毕。
所述统一接口还包括一个预处理单元,用于计算每个所述源的最大超时时间,所有最大超时时间中的最小值用于设定所述同步事件多路分离器的检测时间。
利用本发明的上述方法以及装置,可统一感知多个不同事件源的事件,并对需要检测的特定事件执行对应的操作。且通过对多个源根据需要设定的优先级别,可优先对特定源的特定事件进行检测,以提高检测效率。
附图说明
图1为本发明的基于同步事件多路分离器的多事件处理装置的示意图;
图2A、2B为本发明的基于同步事件多路分离器的多事件处理方法的流程图。
具体实施方式
以下配合实施例以及附图,详细描述本发明的技术特征。
由于产生事件的事件源具有多样性,为了同时统一处理不同事件源的事件,需统一识别各个事件源是否发生事件,统一判断发生的事件是否为所监视的特定的事件,并相应的做出处理。特别是利用同步事件多路分离器实现事件循环的过程,需对多个事件源进行处理,并将其作为同步事件多路分离器的操作对象。
故而本发明中,首先标识各个事件源,使其各自成为一个源,然后将多个源按照一定规则排列以组成一个上下文结构,并利用一同步事件多路分离器依次对该上下文结构进行检测,以检测该上下文结果中是否发生事件,当期待的事件发生时,执行指定的操作。从而可统一对多个不同的事件源进行管理。
请参阅图1所示为本发明的基于同步事件多路分离器的多事件处理装置的示意图。
该多事件处理装置100包括一标识单元110、一排列单元120、一同步事件多路分离器130、一判断执行单元140。
该标识单元110用于将多个所述事件源标识为多个对应的源,并利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;
该排列单元120用于按照一设定的规则将多个所述源进行排列;
该同步事件多路分离器130用于对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;
该判断执行单元140用于通过对所述检测结果进行检测以判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。
所述标识单元110进一步包括一优先级设定单元111,用于设定每个源的优先级。
所述统一接口还包括一个预处理单元112,用于计算每个所述源的最大超时时间,所有最大超时时间中的最小值用于设定所述同步事件多路分离器的检测时间。
所述判断执行单元140进一步包括:一判断单元141以及一执行单元142;
所述判断单元141用于依照多个所述源的优先级由高到低的顺序,判断所述发生的事件是否为该高优先级的源所欲检测的特定事件,如果是,调用所述执行单元142,所述执行单元142用以执行相应的处理方式,如果不是,继续由所述判断单元141判断是否为下一较低优先级的源所欲检测的特定事件,循环直至对所有的源判断完毕。
请参阅图2A、2B所示为本发明的基于同步事件多路分离器的多事件处理方法的流程图。
步骤201,对每个事件源进行标识,按照一统一接口标定其相应的功能,并分别设定优先级;
利用标识单元110将事件源抽象为一对应的源,即,为每个事件源标识一对应的源。同时,利用一统一接口标明该源可实现的功能,即明确与该事件源相关的功能。
本实施例中,该统一接口包括三种功能:预处理、检测和处理。
预处理,用于计算单个源的最大超时时间。
检测,用于查看该源之上是否有所期待的特定事件发生。而该期待的特定事件已预先注册于事件源中。
处理,用于当所期待的事件发生时,执行预先设定的处理。
利用优先级设定单元111,根据应用需求,为每个源设定一优先级。
步骤202,依照优先级,对各个源进行排列;
利用排列单元120对各个源按照优先级的高低顺序排列,高优先级在前,组成一上下文结构。当然,还可依照其他规则进行排列。
步骤203,利用同步事件多路分离器检测该排列中是否有事件发生;
同步事件多路分离器检测该排列中各个源所对应的事件源,判断各个事件源是否发生状态变化,如果发生状态变化,代表有事件发生,则立即记录并返回一记录信息,如果没有发生状态变化,则保持检测并等待直至发生状态变化。该事件可能为多种,可能并非期待监测的事件。
步骤204,利用判断执行单元140,依照设定的优先级,调用优先级最高的源的统一接口中的检测功能,检测同步事件多路分离器输出的记录信息,判断是否为该源所期待的特定事件,如果是,执行步骤205,如果不是,调用优先级次高(优先级减1)的源的统一接口中的检测功能,重新执行步骤204;
步骤205,执行模块142调用该源的统一接口中的处理功能,执行预先设定的处理程序,重新执行步骤203。
在另一实施例中,还包括:
步骤2021,执行于步骤202与步骤203之间,用于对该排列进行预处理;
利用所述统一接口中的预处理单元112,计算出每个源的最大超时时间,取其中的最小值,做为一指定时间。该指定时间用于在步骤203中设定该同步事件多路分离器的检测时间,即该同步事件多路分离器在该指定时间内检测该排列中各个源所对应的事件源,判断各个事件源是否发生状态变化,如果指定时间耗尽且没有发生状态变化,流程结束。
在又一实施例中,又包括:
步骤206,将一源的统一接口中针对一个特定事件的处理方式设定为退出。即,当步骤204检测到该特定事件,且步骤205中执行相应的处理方式时,整体流程结束,并进行资源回收。
利用本发明的上述方法以及装置,可统一感知多个不同事件源的事件,并对需要检测的特定事件执行对应的操作。且通过对多个源根据需要设定的优先级别,可优先对特定源的特定事件进行检测,以提高检测效率。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (10)
1.一种基于同步事件多路分离器的多事件处理方法,用于在一信息系统中处理多个事件源的事件,其特征在于,包括:
步骤一,将多个所述事件源标识为多个对应的源,利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;
步骤二,按照一设定的规则将多个所述源进行排列;
步骤三,利用一同步事件多路分离器对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;
步骤四,通过对所述检测结果进行检测判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。
2.如权利要求1所述的方法,其特征在于,所述步骤一进一步包括:
设定每个源的优先级。
3.如权利要求2所述的方法,其特征在于,所述步骤二进一步包括:
依照所述优先级由高到低的顺序排列多个所述源。
4.如权利要求2所述的方法,其特征在于,所述步骤四进一步包括:
依照多个所述源的优先级由高到低的顺序,判断所述发生的事件是否为该高优先级的源所欲检测的特定事件,如果是,执行相应的处理方式,如果不是,判断是否为下一较低优先级的源所欲检测的特定事件,循环直至对所有源判断完毕。
5.如权利要求1、2、3或4所述的方法,其特征在于,所述步骤四之后继续执行步骤三,直至一设定事件发生,执行退出。
6.一种基于同步事件多路分离器的多事件处理装置,用于在一信息系统中处理多个事件源的事件,其特征在于,包括:
一标识单元,用于将多个所述事件源标识为多个对应的源,并利用一统一接口标识该源所欲检测的特定事件以及所采用的处理方式;
一排列单元,用于按照一设定的规则将多个所述源进行排列;
一同步事件多路分离器,用于对所述排列进行检测,当所述排列中发生一事件时,所述同步事件多路分离器产生一检测结果;
一判断执行单元,用于通过对所述检测结果进行检测判断发生的事件是否为所述特定事件,并对所述特定事件执行相应的处理方式。
7.如权利要求6所述的装置,其特征在于,所述标识单元进一步包括一优先级设定单元,用于设定每个源的优先级。
8.如权利要求7所述的装置,其特征在于,所述排列单元依照所述优先级由高到低的顺序排列多个所述源。
9.如权利要求7所述的装置,其特征在于,所述判断执行单元进一步包括:一判断单元以及一执行单元;
所述判断单元用于依照多个所述源的优先级由高到低的顺序,判断所述发生的事件是否为该高优先级的源所欲检测的特定事件,如果是,调用所述执行单元,所述执行单元用以执行相应的处理方式,如果不是,继续由所述判断单元判断是否为下一较低优先级的源所欲检测的特定事件,循环直至对所有源判断完毕。
10.如权利要求6、7、8或9所述的装置,其特征在于,所述统一接口还包括一个预处理单元,用于计算每个所述源的最大超时时间,所有最大超时时间中的最小值用于设定所述同步事件多路分离器的检测时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101762411A CN101140529A (zh) | 2007-10-23 | 2007-10-23 | 一种基于同步事件多路分离器的多事件处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101762411A CN101140529A (zh) | 2007-10-23 | 2007-10-23 | 一种基于同步事件多路分离器的多事件处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101140529A true CN101140529A (zh) | 2008-03-12 |
Family
ID=39192489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101762411A Pending CN101140529A (zh) | 2007-10-23 | 2007-10-23 | 一种基于同步事件多路分离器的多事件处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101140529A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104253842A (zh) * | 2013-06-28 | 2014-12-31 | 华为技术有限公司 | 同步终端镜像的方法、装置、终端及服务器 |
CN104580367A (zh) * | 2014-12-08 | 2015-04-29 | 北京锐安科技有限公司 | 一种基于reactor模式的网络数据同步方法及系统 |
CN109709587A (zh) * | 2018-12-27 | 2019-05-03 | 上海司南卫星导航技术股份有限公司 | 多事件处理方法及其电路 |
-
2007
- 2007-10-23 CN CNA2007101762411A patent/CN101140529A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104253842A (zh) * | 2013-06-28 | 2014-12-31 | 华为技术有限公司 | 同步终端镜像的方法、装置、终端及服务器 |
US9832259B2 (en) | 2013-06-28 | 2017-11-28 | Huawei Technologies Co., Ltd. | Method and apparatus for cell configuration |
CN104253842B (zh) * | 2013-06-28 | 2018-03-06 | 华为技术有限公司 | 同步终端镜像的方法、装置、终端及服务器 |
CN104580367A (zh) * | 2014-12-08 | 2015-04-29 | 北京锐安科技有限公司 | 一种基于reactor模式的网络数据同步方法及系统 |
CN104580367B (zh) * | 2014-12-08 | 2018-03-20 | 北京锐安科技有限公司 | 一种基于reactor模式的网络数据同步方法及系统 |
CN109709587A (zh) * | 2018-12-27 | 2019-05-03 | 上海司南卫星导航技术股份有限公司 | 多事件处理方法及其电路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101206569B (zh) | 用于动态识别促使服务劣化的组件的方法和系统 | |
CN103209197B (zh) | 集群服务器部署方法及系统 | |
CN103019942B (zh) | 一种基于安卓系统的待测应用自动测试方法和系统 | |
WO2016188100A1 (zh) | 信息系统故障场景信息收集方法及系统 | |
EP3591485B1 (en) | Method and device for monitoring for equipment failure | |
WO2017114152A1 (zh) | 一种业务拨测方法、装置以及系统 | |
CA2560747A1 (en) | Profile based capture component for monitoring events in applications | |
CN103544049A (zh) | 测试环境的自动处理方法、测试的自动化实现方法及装置 | |
CN103034575B (zh) | 崩溃分析方法和装置 | |
WO2020232871A1 (zh) | 一种微服务依赖分析方法及装置 | |
CN102306119A (zh) | 捕获全局异常的系统及方法 | |
CN103049373B (zh) | 一种崩溃的定位方法和装置 | |
CN101895540A (zh) | 用于应用服务进程守护的系统和方法 | |
CN102455932B (zh) | 一种任务实例串行执行方法、装置及系统 | |
CN101140529A (zh) | 一种基于同步事件多路分离器的多事件处理方法及装置 | |
CN116909714A (zh) | 任务运行时的慢节点检测方法、装置、电子设备和介质 | |
CN107204868B (zh) | 一种任务运行监控信息获取方法和装置 | |
CN103178977A (zh) | 计算机系统及计算机系统的开机管理方法 | |
CN101706752B (zh) | 一种软件错误现场定位的方法及装置 | |
CN112100019B (zh) | 面向大规模系统的多源故障协同分析定位方法 | |
CN104268059B (zh) | 一种智能移动终端的应用程序查找方法和系统 | |
CN108733536A (zh) | 监控管理系统及方法 | |
CN103902445A (zh) | 一种回归测试对象确定方法及装置 | |
CN103902312B (zh) | 一种应用程序的发送方法及装置 | |
CN102184137A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20080312 |