多进程管理方法与装置制造方法

文档序号:6549922阅读:143来源:国知局
多进程管理方法与装置制造方法
【专利摘要】本发明提供了一种多进程管理方法与装置,其中,多进程管理方法包括:当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏所述当前进程运行的窗口;所述当前进程根据所述指令通知其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口;其中,所述当前进程和所述其它进程为满足设定规则的多个应用的进程。通过本发明,有效提高了设定按键的功能,实现了多进程模式下的设定按键的统一控制和管理。
【专利说明】多进程管理方法与装置
[0001]本发明专利申请是申请日为2012年3月15日、申请号为201210069316.7、名称为
“多进程管理方法与装置”的中国发明专利申请的分案申请。

【技术领域】
[0002]本申请涉及计算机【技术领域】,特别是涉及一种多进程管理的方法与装置。

【背景技术】
[0003]老板键是一种热键或热键组合,主要功能是能够通过事先设定好的快捷键瞬间隐藏掉多个事先设定的窗口。通过老板键能够快速隐藏游戏或其他无关工作的程式,并让显示器呈现正常工作时的画面,藉以达到保护隐私的目的。
[0004]目前,老板键的实现都是使用进程(如一个游戏进程)中的一个主窗口来注册老板键,其余窗口都是子窗口,主窗口收到消息后会通知子窗口,都是在一个进程模式的下实现。当注册老板键后,用户按下老板键,Windows注册窗口会收到WMJTOTKEY的消息,进而显示或隐藏相应的窗口。
[0005]然而,目前的程序或应用中,老板键相互独立。以两个游戏A和B为例,游戏A和B由同一个用户在同一台电脑上同时运行,如果使用游戏A的进程中的一个主窗口来注册老板键,那么该老板键将只对游戏A起作用,用户按下老板键,可以使游戏A打开的窗口都关闭。而如果此时,游戏B没有注册老板键,则游戏B的窗口将不会关闭。如果游戏B也注册了老板键,则游戏A和B的老板键可以相同也可以不同。在相同的情况下,用户需要先按一次老板键关闭当前的游戏A,然后,再次按下相同的老板键关闭游戏B。在不相同的情况下,则用户需要分别按下不同的老板键先后关闭不同的游戏。可见,无论老板键相同或不同,都无法实现一个老板键关闭两个游戏的窗口的功能。
[0006]也就是说,现有的设定按键如老板键功能,无法实现不同应用的多进程之间的统一控制和管理。


【发明内容】

[0007]本申请所要解决的技术问题是提供一种多进程管理方法与装置,以解决现有的设定按键如老板键功能,无法实现不同应用的多进程之间的统一控制和管理的问题。
[0008]为了解决上述问题,本申请公开了一种多进程管理方法,包括:当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏所述当前进程运行的窗口 ;所述当前进程根据所述指令通知其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口 ;其中,所述当前进程和所述其它进程为满足设定规则的多个应用的进程。
[0009]优选地,在所述当前进程接收到输入的设定按键的指令的步骤之前,还包括:所述多个应用的进程中的一个进程接收到设置指令;接收到所述设置指令的进程将所述设置指令通知给除其自身之外的,所述多个应用的进程中的所有进程;其中,所述设置指令包括所述设定按键的信息,所述设置指令用于指示接收到输入的所述设定按键的指令的进程显示或隐藏其运行的窗口。
[0010]优选地,所述多个应用的进程中的每个进程中均设置有进程间通讯管理器,所述进程间通讯管理器用于通过映射表保存和管理所述多个应用的进程的进程信息,所述进程信息包括进程标识和主窗口句柄的信息。
[0011 ] 优选地,在所述多个应用的进程中的一个进程接收到设置指令的步骤之前,还包括:当所述多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息;所述已启动的进程通过所述注册消息获取所述新启动的进程的信息,并保存至所述已启动的进程的进程间通讯管理器中;所述已启动的进程向所述新启动的进程发送回应消息,所述回应消息中携带有所述已启动的进程的进程间通讯管理器中的进程信息;所述新启动的进程获取所述已启动的进程的进程间通讯管理器中的进程信息,并保存至所述新启动的进程的进程间通讯管理器中。
[0012]优选地,所述已启动的进程为顶层窗口所在的进程;或者,所述已启动的进程包括多个,所述多个已启动的进程中第一个接收到所述注册消息的进程通过所述注册消息获取所述新启动的进程的信息,并向所述新启动的进程发送回应消息。
[0013]优选地,所述当前进程根据所述指令通知其它进程的步骤包括:所述当前进程获取所述当前进程的进程间通讯管理器中保存的所述其它进程的进程信息;根据所述其它进程的进程信息,将所述指令通知所述其它进程。
[0014]优选地,所述满足设定规则的多个应用为同时使用同一浏览器运行的多个应用。
[0015]优选地,所述满足设定规则的多个应用为在一个浏览器中使用游戏插件启动的多个游戏。
[0016]为了解决上述问题,本申请还公开了一种多进程管理装置,包括:第一接收模块,用于使当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏所述当前进程运行的窗口 ;第一通知模块,用于使所述当前进程根据所述指令通知其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口 ;其中,所述当前进程和所述其它进程为满足设定规则的多个应用的进程。
[0017]优选地,该多进程管理装置还包括:第二接收模块,用于在所述第一接收模块使所述当前进程接收到输入的所述设定按键的指令之前,通过所述多个应用的进程中的一个进程接收到设置指令;第二通知模块,用于使接收到所述设置指令的进程将所述设置指令通知给除其自身之外的,所述多个应用的进程中的所有进程;其中,所述设置指令包括所述设定按键的信息,所述设置指令用于指示接收到输入的所述设定按键的指令的进程显示或隐藏其运行的窗口。
[0018]优选地,所述多个应用的进程中的每个进程中均设置有进程间通讯管理器,所述进程间通讯管理器用于通过映射表保存和管理所述多个应用的进程的进程信息,所述进程信息包括进程标识和主窗口句柄的信息。
[0019]优选地,该多进程管理装置还包括:注册模块,用于在所述第二接收模块通过多个应用的进程中的一个进程接收到设置指令之前,当所述多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息;第一获取模块,用于使所述已启动的进程通过所述注册消息获取所述新启动的进程的信息,并保存至所述已启动的进程的进程间通讯管理器中;回复模块,用于使所述已启动的进程向所述新启动的进程发送回应消息,所述回应消息中携带有所述已启动的进程的进程间通讯管理器中的进程信息;第二获取模块,用于使所述新启动的进程获取所述已启动的进程的进程间通讯管理器中的进程信息,并保存至所述新启动的进程的进程间通讯管理器中。
[0020]优选地,所述已启动的进程为顶层窗口所在的进程;或者,所述已启动的进程包括多个,所述多个已启动的进程中第一个接收到所述注册消息的进程通过所述注册消息获取所述新启动的进程的信息,并向所述新启动的进程发送回应消息。
[0021]优选地,所述第一通知模块,用于使所述当前进程获取所述当前进程的进程间通讯管理器中保存的所述其它进程的进程信息;根据所述其它进程的进程信息,将所述指令通知所述其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口。
[0022]优选地,所述满足设定规则的多个应用为同时使用同一浏览器运行的多个应用。
[0023]优选地,所述满足设定规则的多个应用为在一个浏览器中使用游戏插件启动的多个游戏。
[0024]与现有技术相比,本申请具有以下优点:
[0025]通过本申请,使满足一定规则的多个应用的不同进程之间相互关联(如多个游戏的进程之间相互关联),当当前进程收到设定按键(如老板键)的指令时,不但显示或隐藏自身运行的窗口,还通知与其关联的其它进程显示或隐藏各自运行的窗口,以使多个应用的窗口同时显示或隐藏,从而解决了现有的设定按键功能,无法实现不同应用的多进程之间的统一控制和管理的问题,有效提高了设定按键的功能,实现了多进程模式下的设定按键的统一控制和管理。

【专利附图】

【附图说明】
[0026]图1是根据本申请实施例一的一种多进程管理方法的步骤流程图;
[0027]图2是根据本申请实施例二的一种多进程管理方法的步骤流程图;
[0028]图3是根据本申请实施例三的一种多进程管理方法的步骤流程图;
[0029]图4是根据本申请实施例四的一种多进程管理装置的结构框图。

【具体实施方式】
[0030]为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本申请作进一步详细的说明。
[0031]实施例一
[0032]参照图1,示出了根据本申请实施例一的一种多进程管理方法的步骤流程图。
[0033]本实施例的多进程管理方法包括以下步骤:
[0034]步骤S102:当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏当前进程运行的窗口。
[0035]步骤S104:当前进程根据所述指令通知其它进程,使其它进程显示或隐藏其它进程运行的窗口。
[0036]其中,当前进程和其它进程为满足设定规则的多个应用的进程。设定规则可以由本领域技术人员根据实际情况灵活设定,通常为多个相同类型的应用或者使用同一程序打开的多个应用,如,设定为使用同一浏览器打开的应用,或者设定为使用同一插件打开的应用,或者设定为应用类型相同(如均为游戏类或电子书类应用)的应用,或者设定为均能接受老板键的多个浏览器等,本申请对此不作限制。
[0037]优选地,满足设定规则的多个应用为同时使用同一浏览器运行的多个应用,如同时在同一个浏览器中使用游戏插件打开的多个游戏。
[0038]举例来说,使用老板键功能统一控制和管理多个游戏窗口时,由于老板键功能是一个内置于游戏插件中的游戏辅助功能,而且游戏插件打开游戏后是以单独的进程方式来运行游戏的。因此,可以使多个游戏(满足使用游戏插件打开的规则)的进程之间相互关联,使用老板键管理和控制这些相互关联的多个游戏的进程,实现多个游戏窗口的统一控制和管理。其中,关联形式可以有多种,如使用关联表记录多个进程之间的信息,根据关联表中的信息通知其它进程等,但不限于此,在实际应用中还可以使用其它任意适当形式,如实时查找获取相关进程的信息,根据实时获取的信息通知相关进程等。
[0039]本实施例中,当当前游戏进程接收到用户按下的老板键的指令后,会显示或隐藏当前游戏进程运行的游戏窗口,同时,将接收到用户按下老板键的消息通知给与其关联的其它进程,即,运行的其它游戏进程,以指示其它游戏进程关闭相应的游戏窗口。
[0040]需要说明的是,以上仅为示例性说明,本领域技术人员应当明了,本实施例还可应用于其它满足设定规则的多个应用的场景,如电子书阅读等,本申请对此不作限制。
[0041]通过本实施例,使满足一定规则的多个应用的不同进程之间相互关联,当当前进程收到设定按键的指令时,不但显示或隐藏自身运行的窗口,还通知与其关联的其它进程显示或隐藏各自运行的窗口,以使多个应用的窗口同时显示或隐藏,从而解决了现有的老板键功能,无法实现不同应用的多进程之间的统一控制和管理的问题,有效提高了老板键的功能,实现了多进程模式下的老板键的统一控制和管理。当然,其它一键管理多应用或多进程的场景均可参照本实施例进行。
[0042]实施例二
[0043]参照图2,示出了根据本申请实施例二的一种多进程管理方法的步骤流程图。
[0044]本实施例中,以使用老板键控制和管理在一个浏览器的多个标签页中使用游戏插件打开的多个游戏进程为例,对本申请的多进程管理方法进行说明,但不限于此,其它类似使用热键控制和管理多个应用进程的场景均可参照本实施例进行。
[0045]本实施例中,老板键功能是一个内置于游戏插件中的游戏辅助功能,可以一键隐藏或开启游戏窗口。使用游戏插件打开游戏后,游戏是以单独的进程方式来运行游戏的,这样打开多个游戏就会有多个进程同时运行,所以需要有管理器来管理所有运行的游戏进程。本实施例中,对游戏的管理采用星形的方式来管理运行的游戏进程,当使用游戏插件打开的游戏进程有多个时,每个进程启动后都会向顶层窗口发送注册消息,除顶层窗口所在的游戏进程外的,所有其他已打开的游戏进程收到后,会更新自己的IPC管理器(进程间通讯管理器),并向发送消息的进程发送回应消息,并携带当前已有的进程,这样所有的进程都连接起来。当用户在某一进程设置老板键后,该进程会调用API (应用程序接口)注册老板键,并同时发送其他进程告知当前用户设置的老板键值。用户按下老板键,注册老板键的进程会首先响应,该进程处理完后通知所有其他进程强制显示或隐藏窗口。
[0046]具体地,本实施例的多进程管理方法包括以下步骤:
[0047]步骤S202:当多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息。
[0048]本实施例中,多个应用为使用游戏插件打开的多个游戏,已启动的进程为已启动游戏的顶层窗口所在的进程。当使用游戏插件打开一个新的游戏时,该游戏的进程会向顶层窗口的游戏进程发送注册消息。当然,已启动的进程也可能有多个,这时,新启动的进程可以向已启动的多个进程发送注册消息。
[0049]步骤S204:已启动的进程通过注册消息获取新启动的进程的信息,并保存至已启动的进程的进程间通讯管理器中。
[0050]其中,多个应用的进程中的每个进程中均设置有进程间通讯管理器,进程间通讯管理器用于保存和管理多个应用的进程的进程信息。通过进程间通讯管理器,可以快速获取进程信息,确定进程状态,提高多进程管理效率。
[0051]本实施例中,顶层窗口的游戏进程获取新游戏的进程信息,并保存至自己的进程间通讯管理器中,若无其它游戏进程,则此时,顶层窗口的游戏进程中将保存有其自身及新游戏进程的进程信息。
[0052]如果已启动的进程有多个,则最先收到新启动的进程的注册消息的进程获取启动进程的进程信息,并将该信息保存至自己的进程间通讯管理器,同时通知其它已启动的进程更新本进程的进程间通讯管理器中的信息,以使各已启动进程的进程间通讯管理器中的信息同步。
[0053]步骤S206:已启动的进程向新启动的进程发送回应消息。
[0054]其中,回应消息中携带有已启动的进程的进程间通讯管理器中的进程信息。
[0055]本实施例中,顶层窗口的游戏进程向新游戏进程发送回应消息,该回应消息中携带有顶层窗口的游戏进程和新游戏进程的进程信息。
[0056]如果已启动的进程有多个,则最先收到新启动的进程的注册消息的进程向启动进程发送回应消息,其中携带有其自身的进程间通讯管理器中的进程信息,新启动的进程收到该消息后,获取其中的进程信息保存至启动进程的进程间通讯管理器中,从而实现了新启动的进程与其它已启动的进程间的信息同步。通过最先收到注册消息的进程通知其它进程和发送回应消息,提高了消息处理效率,加快了窗口显示或隐藏时间,提升了用户体验。
[0057]当然,在实际应用中,不限于最先收到注册消息的进程通知其它进程和发送回应消息,本领域技术人员可以根据实际情况,采用其它适当策略决定注册消息的接收和回应模式,本申请对此不作限制。
[0058]步骤S208:新启动的进程获取已启动的进程的进程间通讯管理器中的进程信息,并保存至新启动的进程的进程间通讯管理器中。
[0059]本实施例中,新游戏进程获取回应消息中携带的顶层窗口的游戏进程和新游戏进程的进程信息,并保存至新游戏进程的进程间通讯管理器中。
[0060]至此,多个应用的进程间建立相互关联,通过任意一个进程的进程间通讯管理器,均可获取多个应用的所有进程的进程信息。
[0061]步骤S210:多个应用的进程中的一个进程接收到设置指令。
[0062]以老板键为例,用户可以在多个应用的进程中的任意一个进行设置,设置指令中包括设定按键的信息(如,设定按键都包括哪几个按键的信息),设置指令用于指示接收到输入的设定按键的指令的进程显示或隐藏其运行的窗口(如,当前进程收到用户按下老板键的指令,进行窗口的显示或隐藏)。
[0063]通过任意一个进程输入设置指令,提高了多进程管理的兼容性,提升了用户使用体验。
[0064]步骤S212:接收到设置指令的进程将设置指令通知给除其自身之外的,多个应用的进程中的所有进程。
[0065]一旦有进程接收到设置指令,说明用户进行了按键设置(如,老板键设置),这时,该进程会通知其它相关进程,告知其它进程用户进行的按键设置,使按键设置对相关的所有进程都起效。
[0066]步骤S214:当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏当前进程运行的窗口。
[0067]当用户按下设定按键后,当前进程(如,当前运行的游戏进程)接收到指令,则将当前进程运行的窗口显示或隐藏。
[0068]步骤S216:当前进程获取当前进程的进程间通讯管理器中保存的其它进程的进程息。
[0069]步骤S218:当前进程根据其它进程的进程信息,将所述指令通知其它进程,使其它进程显示或隐藏其它进程运行的窗口。
[0070]当前进程的进程间通讯管理器中保存有所有相关的进程的进程信息,用户按下设定按键时,当前进程不但显示或隐藏自身运行的窗口,同时通知相关进程也进行相应窗口的显示或隐藏,从而实现设定按键对多个应用的统一管理或控制。
[0071]本实施例以老板键为例,在本实施例中,老板键功能是一个内置于游戏插件中的游戏辅助功能,通过本实施例的老板键功能可以一键隐藏或开启所有游戏窗口。本实施例中,在一个进程中设置老板键,所有的网页游戏进程或者Flash游戏进程都会收到老板键进行隐藏窗口或者显示窗口,从而实现了多进程模式下的老板键的统一控制。
[0072]与现有老板键功能相比:(I)本实施例中,用户设置一次老板键,对所有进程都有效,减少了用户设置的次数,提高了用户体验;(2)已经设置老板键的进程可以随意退出,其他进程依然可以隐藏或者显示窗口,相比传统的单进程设置老板键,本进程设置其它进程不设置的情况,避免了单进程老板键退出后老板键功能即失效的问题,使老板键功能有很大改进;(3)所有进程窗口中老板键的设置窗口可以使用统一的界面,而且各进程的进程信息可以同步,这样方便了用户对老板键的设置。
[0073]实施例三
[0074]参照图3,示出了根据本申请实施例三的一种多进程管理方法的步骤流程图。
[0075]本实施例的多进程管理方法包括以下步骤:
[0076]步骤S302:显示老板键窗口,接收用户进行老板键设置的指令。
[0077]本步骤中,可以使用满足设定规则的多个应用中的任意一个应用显示老板键窗口,供用户进行设置。
[0078]步骤S304:注册老板键。
[0079]本步骤中,用户在某一应用的进程设置老板键后,该进程会调用API注册老板键,并同时发送多个应用中的其他相关进程,告知当前用户设置的老板键值。
[0080]此外,在步骤S302之前,或者步骤S304之后,可能会有新的满足设定规则的应用的进程启动,该进程启动时,会向已启动的进程发送注册消息。当一个已启动进程收到某个进程发送来的注册消息时,此消息携带了进程标识和主窗口句柄的信息,如,游戏ID、账号ID、创建的主窗口句柄等,收到注册消息的进程会根据游戏ID和账号ID组合(进程标识)作为一个唯一的key保存到当前进程的IPC管理器中。优选地,IPC管理器可以使用map表(映射表)来保存和管理多个应用的进程的进程信息。
[0081]当一个进程收到某个进程的注册消息后,表明有新的进程启动,但是新启动的进程此时并不知道目前已经启动了多少进程,所以哪个进程先收到新启动进程的注册消息后,就会优先回应此消息,顺便携带了当前有多少个进程以及每个进程的具体信息,具体信息也可以是如游戏ID、账号ID、创建的主窗口句柄等进程标识和主窗口句柄的信息,这样保证了新启动的进程知道了其他进程的信息供后续处理。其中,一个进程保存的其他进程的进程信息可以通过map表来保存,进而可以通过内存映射文件传递到其他进程。
[0082]当多个应用的多个进程之间建立了联系后,老板键的设置和注册会被每个进程获知,以便后续老板键对多进程的统一控制和管理。
[0083]步骤S306:当前进程接收到用户按下老板键的指令。
[0084]步骤S308:当前进程隐藏或显示其运行的窗口。
[0085]步骤S310:当前进程将用户按下老板键的指令以消息的形式通知给其他进程。
[0086]当前进程在通知其他进程时,根据其自身保存的map表获得其他进程的进程信息,进而根据进程信息通知相关进程。
[0087]步骤S312:其他进程接收到当前进程发送的老板键消息。
[0088]步骤S314:其他进程隐藏或显示相应的窗口。
[0089]其他进程在收到当前进程发送的消息后,隐藏或显示各自对应的窗口。
[0090]通过本实施例,实现了在一个应用的进程中设置老板键,对多个应用的多个进程进行统一控制和管理,解决了现有的老板键功能,无法实现不同应用的多进程之间的统一控制和管理的问题,有效提高了老板键的功能,实现了多进程模式下的老板键的统一控制和管理。
[0091]实施例四
[0092]参照图4,示出了根据本申请实施例四的一种多进程管理装置的结构框图。
[0093]本实施例的多进程管理装置包括:第一接收模块402,用于使当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏当前进程运行的窗口 ;第一通知模块404,用于使当前进程根据所述指令通知其它进程,使其它进程显示或隐藏其它进程运行的窗口 ;其中,当前进程和其它进程为满足设定规则的多个应用的进程。
[0094]优选地,本实施例的多进程管理装置还包括:第二接收模块406,用于在第一接收模块402使当前进程接收到输入的设定按键的指令之前,通过多个应用的进程中的一个进程接收到设置指令;第二通知模块408,用于使接收到设置指令的进程将设置指令通知给除其自身之外的,多个应用的进程中的所有进程;其中,设置指令包括设定按键的信息,设置指令用于指示接收到输入的设定按键的指令的进程显示或隐藏其运行的窗口。
[0095]优选地,多个应用的进程中的每个进程中均设置有进程间通讯管理器,进程间通讯管理器用于保存和管理多个应用的进程的进程信息。
[0096]优选地,进程间通讯管理器通过映射表保存和管理多个应用的进程的进程信息。
[0097]优选地,进程信息包括进程标识和主窗口句柄的信息。
[0098]优选地,本实施例的多进程管理装置还包括:注册模块410,用于在第二接收模块406通过多个应用的进程中的一个进程接收到设置指令之前,当多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息;第一获取模块412,用于使已启动的进程通过注册消息获取新启动的进程的信息,并保存至已启动的进程的进程间通讯管理器中;回复模块414,用于使已启动的进程向新启动的进程发送回应消息,回应消息中携带有已启动的进程的进程间通讯管理器中的进程信息;第二获取模块416,用于使新启动的进程获取已启动的进程的进程间通讯管理器中的进程信息,并保存至新启动的进程的进程间通讯管理器中。
[0099]优选地,已启动的进程为顶层窗口所在的进程。
[0100]优选地,已启动的进程包括多个;多个已启动的进程中第一个接收到注册消息的进程通过注册消息获取新启动的进程的信息,并向新启动的进程发送回应消息。
[0101]优选地,第一通知模块404,用于使当前进程获取当前进程的进程间通讯管理器中保存的其它进程的进程信息;根据其它进程的进程信息,将所述指令通知其它进程,使其它进程显示或隐藏其它进程运行的窗口。
[0102]优选地,满足设定规则的多个应用为同时使用同一浏览器运行的多个应用。
[0103]优选地,满足设定规则的多个应用为在一个浏览器中使用游戏插件启动的多个游戏。
[0104]本实施例的多进程管理装置用于实现前述多个方法实施例中相应的多进程管理方法,并具有相应的方法实施例的有益效果,在此不再赘述。
[0105]需要说明的是,本申请的多个实施例均以游戏为例,但不限于此,本申请的多进程管理方案还可应用于其它类似场景,如同时打开多个支持老板键的浏览器,则在一个浏览器中设置老板键即可对打开的多个浏览器同时起作用,一旦用户按下老板键,这些浏览器的窗口将被同时隐藏或显示。或者,如同时打开了多个相同类型的程序,如WORD程序,则在一个WORD程序中设置热键,即可实现对多个打开的WORD文档的打开或关闭。可见,通过本申请的多进程管理方案,有效提高了设定按键如老板键的功能,实现了多进程模式下的设定按键的统一控制和管理。
[0106]本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0107]以上对本申请所提供的一种多进程管理方法和装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
【权利要求】
1.一种多进程管理方法,其特征在于,包括: 当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏所述当前进程运行的窗口 ; 所述当前进程根据所述指令通知其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口; 其中,所述当前进程和所述其它进程为满足设定规则的多个应用的进程。
2.根据权利要求1所述的方法,其特征在于,在所述当前进程接收到输入的设定按键的指令的步骤之前,还包括: 所述多个应用的进程中的一个进程接收到设置指令; 接收到所述设置指令的进程将所述设置指令通知给除其自身之外的,所述多个应用的进程中的所有进程; 其中,所述设置指令包括所述设定按键的信息,所述设置指令用于指示接收到输入的所述设定按键的指令的进程显示或隐藏其运行的窗口。
3.根据权利要求2所述的方法,其特征在于,所述多个应用的进程中的每个进程中均设置有进程间通讯管理器,所述进程间通讯管理器用于通过映射表保存和管理所述多个应用的进程的进程信息,所述进程信息包括进程标识和主窗口句柄的信息。
4.根据权利要求3所述的方法,其特征在于,在所述多个应用的进程中的一个进程接收到设置指令的步骤之前,还包括: 当所述多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息; 所述已启动的进程通过所述注册消息获取所述新启动的进程的信息,并保存至所述已启动的进程的进程间通讯管理器中; 所述已启动的进程向所述新启动的进程发送回应消息,所述回应消息中携带有所述已启动的进程的进程间通讯管理器中的进程信息; 所述新启动的进程获取所述已启动的进程的进程间通讯管理器中的进程信息,并保存至所述新启动的进程的进程间通讯管理器中。
5.根据权利要求4所述的方法,其特征在于, 所述已启动的进程为顶层窗口所在的进程; 或者, 所述已启动的进程包括多个,所述多个已启动的进程中第一个接收到所述注册消息的进程通过所述注册消息获取所述新启动的进程的信息,并向所述新启动的进程发送回应消肩、O
6.根据权利要求3所述的方法,其特征在于,所述当前进程根据所述指令通知其它进程的步骤包括: 所述当前进程获取所述当前进程的进程间通讯管理器中保存的所述其它进程的进程信息; 根据所述其它进程的进程信息,将所述指令通知所述其它进程。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述满足设定规则的多个应用为同时使用同一浏览器运行的多个应用。
8.根据权利要求1至6任一项所述的方法,其特征在于,所述满足设定规则的多个应用为在一个浏览器中使用游戏插件启动的多个游戏。
9.一种多进程管理装置,其特征在于,包括: 第一接收模块,用于使当前进程接收到输入的设定按键的指令,根据所述指令显示或隐藏所述当前进程运行的窗口; 第一通知模块,用于使所述当前进程根据所述指令通知其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口; 其中,所述当前进程和所述其它进程为满足设定规则的多个应用的进程。
10.根据权利要求9所述的装置,其特征在于,还包括: 第二接收模块,用于在所述第一接收模块使所述当前进程接收到输入的所述设定按键的指令之前,通过所述多个应用的进程中的一个进程接收到设置指令; 第二通知模块,用于使接收到所述设置指令的进程将所述设置指令通知给除其自身之外的,所述多个应用的进程中的所有进程; 其中,所述设置指令包括所述设定按键的信息,所述设置指令用于指示接收到输入的所述设定按键的指令的进程显示或隐藏其运行的窗口。
11.根据权利要 求10所述的装置,其特征在于,所述多个应用的进程中的每个进程中均设置有进程间通讯管理器,所述进程间通讯管理器用于通过映射表保存和管理所述多个应用的进程的进程信息,所述进程信息包括进程标识和主窗口句柄的信息。
12.根据权利要求11所述的装置,其特征在于,还包括: 注册模块,用于在所述第二接收模块通过多个应用的进程中的一个进程接收到设置指令之前,当所述多个应用的进程中有进程启动时,新启动的进程向已启动的进程发送注册消息; 第一获取模块,用于使所述已启动的进程通过所述注册消息获取所述新启动的进程的信息,并保存至所述已启动的进程的进程间通讯管理器中; 回复模块,用于使所述已启动的进程向所述新启动的进程发送回应消息,所述回应消息中携带有所述已启动的进程的进程间通讯管理器中的进程信息; 第二获取模块,用于使所述新启动的进程获取所述已启动的进程的进程间通讯管理器中的进程信息,并保存至所述新启动的进程的进程间通讯管理器中。
13.根据权利要求12所述的装置,其特征在于, 所述已启动的进程为顶层窗口所在的进程; 或者, 所述已启动的进程包括多个,所述多个已启动的进程中第一个接收到所述注册消息的进程通过所述注册消息获取所述新启动的进程的信息,并向所述新启动的进程发送回应消肩、O
14.根据权利要求11所述的装置,其特征在于,所述第一通知模块,用于使所述当前进程获取所述当前进程的进程间通讯管理器中保存的所述其它进程的进程信息;根据所述其它进程的进程信息,将所述指令通知所述其它进程,使所述其它进程显示或隐藏所述其它进程运行的窗口。
15.根据权利要求9至14任一项所述的装置,其特征在于,所述满足设定规则的多个应用为同时使用同一浏览器运行的多个应用。
16.根据权利要求9至14任一项所述的装置,其特征在于,所述满足设定规则的多个应用为在一个浏览器中使用游 戏插件启动的多个游戏。
【文档编号】G06F9/54GK104077180SQ201410270570
【公开日】2014年10月1日 申请日期:2012年3月15日 优先权日:2012年3月15日
【发明者】赵肖勇, 左文平, 张菊元 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1