一种用于多个进程之间进行通信方法及客户端技术

技术编号:13620185 阅读:60 留言:0更新日期:2016-08-31 11:48
本发明专利技术涉及信息技术领域,公开了一种用于多个进程之间进行通信方法及实施该方法的客户端。该方法包括:第一进程向一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程的情况下,执行该信令所指示的操作,否则丢弃该信令。通过上述技术方案,由于进程间的通信是在缓存内进行的,因此信息的传输速度较快,且该信息难以在被黑客截获,安全性较高。

【技术实现步骤摘要】

本专利技术涉及信息技术,具体地,涉及一种用于多个进程之间进行通信方法及实施该方法的客户端。
技术介绍
进程间通信(IPC,Inter Process communication)是一组编程接口,让程序员能够协调不同的程序进程,使之能在一个操作系统里同时运行。这使得一个程序能够在同一时间里处理许多用户的要求。因为即使只有一个用户发出要求,也可能导致一个操作系统中多个进程的运行,进程之间必须互相通话。目前常用的进程间通信方式主要为套接字(SOCKET)通信方式或通过注册表或本地文件作为交换介质来实现,然而这些方式存在消息传输速度以及灵活性方面的问题。另外,传统的SOCKET是通过端口进行通信的,目前的黑客技术大多是通过该端口来窃取信息,因此该通信方式还存在安全性较低的缺陷。
技术实现思路
本专利技术的目的是提供一种用于多个进程之间进行通信方法及实施该方法的客户端,其具有进程间通信速度快、安全的优点。为了实现上述目的,本专利技术提供一种用于多个进程之间进行通信方法,该方法包括:第一进程向一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程
的情况下,执行该信令所指示的操作,否则丢弃该信令。其中,所述第一进程可将所述事件广播至所述所有其他进程中与该事件相关联的进程。其中,所述方法还可包括:所述进程在执行完所述信令所指示的操作之后,生成以反馈信令,将该反馈信令存入所述缓存区域,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述反馈信令,并判断该反馈信令是否是针对该进程的,在所述反馈信令不是针对该进程的情况下,丢弃该反馈信令。其中,所述方法还可包括:在一进程对所述缓存区域进行操作之前,读取该缓存区域的状态;在该缓存区域处于非锁定状态的情况下,将该缓存区域的状态置为锁定状态,之后对该缓存区域进行所述操作;在所述缓存区域处于锁定状态的情况下,进行等待,直至所述缓存区域处于非锁定状态。其中,所有其他进程中的每一进程基于所述信令的信令格式来判断该信令是否是针对该进程的。相应地,本专利技术还提供了一种客户端,该客户端包括:缓存;以及处理器,该处理器同时执行多个进程,且用于:第一进程向所述缓存的一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程的情况下,执行该信令所指示的操作,否则丢弃该信令。其中,所述第一进程可将所述事件广播至所述所有其他进程中与该事件相关联的进程。其中,所述处理器还用于:所述进程在执行完所述信令所指示的操作之后,生成以反馈信令,将该反馈信令存入所述缓存区域,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述
缓存区域读取所述反馈信令,并判断该反馈信令是否是针对该进程的,在所述反馈信令不是针对该进程的情况下,丢弃该反馈信令。其中,所述处理器还用于:在一进程对所述缓存区域进行操作之前,读取该缓存区域的状态;在该缓存区域处于非锁定状态的情况下,将该缓存区域的状态置为锁定状态,之后对该缓存区域进行所述操作;在所述缓存区域处于锁定状态的情况下,进行等待,直至所述缓存区域处于非锁定状态。其中,所有其他进程中的每一进程基于所述信令的信令格式来判断该信令是否是针对该进程的。通过上述技术方案,由于进程间的通信是在缓存内进行的,因此信息的传输速度较快,且该信息难以在被黑客截获,安全性较高。本专利技术的其它特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本专利技术,但并不构成对本专利技术的限制。在附图中:图1为本专利技术提供的进程间通信方法的流程图;以及图2为本专利技术提供的客户端的结构示意图。附图标记说明100 缓存 200 处理器具体实施方式以下结合附图对本专利技术的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术,并不用于限制本发
明。本专利技术提供了一种用于多个进程之间进行通信方法,该方法包括:第一进程向一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程的情况下,执行该信令所指示的操作,否则丢弃该信令。图1为本专利技术提供的进程间通信方法的流程图。如图1所示,进程P1可发送信令至进程P2,具体过程如下:进程P1将信令存放至缓存内的缓存区域,同时广播事件(该事件可为任何进程可广播且可接收的事件)至所有其他进程(诸如,进程P2~Pn,其中n为大于或等于3的整数)。进程P2接收到所述事件之后,可从所述缓存区域内读取所述信令,并判断该信令是否是针对该进程P2的。例如,进程P2其可判断所述信令的信令格式,该信令的格式信息内含有“目的地址”为“P2”的信息(例如,from P1 to P2),则可认为该信令是针对进程P2的。对于其他进程P3~Pn,其也会接收所述事件,并在之后读取所述缓存区域内的信令,然后判断该信令是否是针对各自的进程的,在不是针对该各自的进程的情况下,进程P3~Pn可丢弃所述信令。在进程P2确定所述信令是针对该进程P2的之后,该进程P2可执行所述信令(即,按照所述信令的要求来进行操作,比如说执行初始化、终止、显示等等操作)。在进程P2执行信令完毕之后,该进程P2还可发送反馈信令至所述进程P1。该反馈信息可是握手信息、指示所述进程P1进行下一步的一些操作、亦可仅仅告知进程P1其所发送的信令已执行完毕。该反馈信令的发送方式与上述进程P1向进程P2发送信令的方式相同,均是通过将反馈信令存入缓存区域、广播事件以触发进程P1从所述缓存区域读取所述反馈信令,当然该过程中其他进程P3~Pn也会收到所述事件并对所述缓存区域内的信令进行读取,只是在发现该信令并非针对进程P3~Pn的情况下
对其进行丢弃。进程P1读取完所述反馈信令,并判断该反馈信令是针对该进程P1之后,可执行该反馈信令所指示的操作。优选地,所述事件可为某些特定的事件,进程P1可将所述事件广播至所述所有其他进程中与该事件相关联的进程。这样可减少事件的广播范围,提高广播的效率。为避免不同进程对缓存区域进行存取操作时的混乱,优选地,所述缓存区域设置有一锁定状态指示符,以指示该缓存区域是否处于锁定状态还是处于非锁定状态。在一进程对所述缓存区域进行操作之前,首先会读取该锁定状态指示符;在该锁定状态指示符指示缓存区域处于非锁定状态的情况下,将该缓存区域的状态置为锁定状态,之后对该缓存区域进行所述操作,从而防止该进程对所述缓存区域进程进行存取期间其他进程也对该缓存区域进行存取;在所述锁定状态指示符指示所述缓存区域处于锁定状态的情况下,该进程进行等待,直至所述锁定状态指示符指示缓存区域处于非锁定状态。上述对事件的产生、广播等操作,可利用windows系统内的CreateEv本文档来自技高网
...

【技术保护点】
一种用于多个进程之间进行通信方法,其特征在于,该方法包括:第一进程向一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程的情况下,执行该信令所指示的操作,否则丢弃该信令。

【技术特征摘要】
1.一种用于多个进程之间进行通信方法,其特征在于,该方法包括:第一进程向一缓存区域存放信令,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述信令,并判断该信令是否是针对该进程的,在所述信令是针对该进程的情况下,执行该信令所指示的操作,否则丢弃该信令。2.根据权利要求1所述的方法,其特征在于,所述第一进程将所述事件广播至所述所有其他进程中与该事件相关联的进程。3.根据权利要求1所述的方法,其特征在于,该方法还包括:所述进程在执行完所述信令所指示的操作之后,生成以反馈信令,将该反馈信令存入所述缓存区域,并广播事件至所有其他进程;以及所有其他进程中的每一进程在接收到所述事件之后,从所述缓存区域读取所述反馈信令,并判断该反馈信令是否是针对该进程的,在所述反馈信令不是针对该进程的情况下,丢弃该反馈信令。4.根据权利要求1所述的方法,其特征在于,还包括:在一进程对所述缓存区域进行操作之前,读取该缓存区域的状态;在该缓存区域处于非锁定状态的情况下,将该缓存区域的状态置为锁定状态,之后对该缓存区域进行所述操作;在所述缓存区域处于锁定状态的情况下,进行等待,直至所述缓存区域处于非锁定状态。5.根据权利要求1所述的方法,其特征在于,所有其他进程中的每一进程基于所述信令的信令格式来判断该信令是否是针对该进程的。6.一种客户端,其特征在于,该客...

【专利技术属性】
技术研发人员:韦赞别
申请(专利权)人:乐视网信息技术北京股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1