基于多进程的全局设置方法及系统的制作方法

文档序号:6337955阅读:221来源:国知局
专利名称:基于多进程的全局设置方法及系统的制作方法
基于多进程的全局设置方法及系统
技术领域
本发明涉及计算机技术,尤其涉及一种基于多进程的全局设置方法及系统。背景技术
全局设置是指在具有多进程的软件中,对软件的基本属性进行设置。在具有多处理进程的软件中,通常包括主进程和子进程,其中主进程是软件实体,实现软件的大部分功能,子进程通常为一些辅助类的程序,辅助主进程进行一些单独的功能。然而,传统的全局设置方法往往通过某一个进程(例如主进程)来进行全局设置,多个进程之间的设置并不能实现同步。例如,影像软件的主进程为影像主程序,通过影像设置功能进行全局设置(如设置窗口显示方式、图片播放比例、鼠标滚轮设置等),其子进程为影像查看器。传统的这种影像软件,仅能通过影像主程序的影像设置功能来进行全局设置,而影像查看器本身并没有设置功能。也有一些影像查看器有部分设置功能,但其设置并不能与主进程之间实现同

少ο

发明内容基于此,有必要提供一种能够实现进程之间同步设置的基于多进程的全局设置方法。一种基于多进程的全局设置方法,包括以下步骤第一进程读取配置文件,将配置文件中的设置信息加入内存;通过第一进程的用户界面进行全局设置;根据所述全局设置更改内存中的数据;将更改的内存数据写入配置文件中;第二进程根据更新后的配置文件共享第一进程的全局设置。优选的,所述第一进程为主进程,所述第二进程为子进程;所述将更改的内存数据写入配置文件中的步骤为当主进程全局设置的对象为子进程的设置对象时,主进程将更改的内存数据写入主进程的配置文件及子进程的配置文件中。优选的,所述第二进程根据更新后的配置文件共享第一进程的全局设置的步骤为主进程通知子进程,子进程读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存,根据内存中的数据刷新子进程的用户界面。优选的,所述第一进程为子进程,所述第二进程为主进程;所述将更改后的内存数据写入配置文件中的步骤为将更改后的内存数据写入子进程的配置文件中。优选的,所述第二进程根据更新后的配置文件共享第一进程的全局设置的步骤为
子进程通知主进程,主进程读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存,根据内存中的数据刷新主进程的用户界面。此外,还有必要提供一种能够实现进程之间同步设置的基于多进程的全局设置系统。一种基于多进程的全局设置系统,包括相互通信的第一进程和第二进程,所述第一进程包括第一信息获取模块,读取配置文件,将配置文件中的设置信息加入内存;第一设置模块,通过第一进程的用户界面进行全局设置;第一更新模块,根据所述全局设置更改内存中的数据,将更改的内存数据写入配置文件中;所述第二进程根据更新后的配置文件共享第一进程的全局设置。优选的,所述第一进程为主进程,所述第二进程为子进程;所述第一更新模块用于当主进程全局设置的对象为子进程的设置对象时,将更改的内存数据写入主进程的配置文件及子进程的配置文件中。优选的,所述第一进程还包括通信模块,当主进程全局设置的对象为子进程的设置对象时通知子进程;所述第二进程包括第二信息获取模块,读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存;第二设置模块,根据内存中的数据刷新子进程的用户界面。优选的,所述第一进程为子进程,所述第二进程为主进程;所述第一更新模块用于将更新后的内存数据写入子进程的配置文件中。优选的,所述第一进程还包括通信模块,在所述第一更新模块将更新后的内存数据写入子进程的配置文件后通知主进程;所述第二进程包括第二信息获取模块,读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存;第二设置模块,根据内存中的数据刷新主进程的用户界面。上述基于多进程的全局设置方法及系统,第一进程的全局设置实时更新在配置文件中,通过更新后的配置文件,第二进程对第一进程的全局设置实现共享,从而能在多个进程之间实现同步设置。

图1为第一实施例所提供的的基于多进程的全局设置方法的流程图;图2为第二实施例所提供的基于多进程的全局设置方法的流程图;图3为第三实施例所提供的基于多进程的全局设置方法的流程图;图4为第四实施例所提供的基于多进程的全局设置系统的结构示意图;图5为第五实施例所提供的基于多进程的全局设置系统的结构示意图6为QQ影像的全局设置的示意图。
具体实施方式在第一实施例中,如图1所示,一种基于多进程的全局设置方法包括步骤S102,第一进程读取配置文件,将配置文件中的设置信息加入内存。在Windows系统中,INI文件为系统配置文件。配置文件是持久化的数据,存储在磁盘中。第一进程进行全局设置前需进行数据初始化,即从磁盘中读取配置文件,将配置文件中的设置信息在第一进程的内存空间中复制一个映像。步骤S104,通过第一进程的用户界面进行全局设置。第一进程启动全局设置,第一进程的用户界面从第一进程的内存中间中查询各种需展示的信息,将查询到的信息初始化保存在用户界面数据集中。步骤S106,根据全局设置更改内存中的数据。当通过第一进程的用户界面进行全局设置后,改变了设置内容,用户界面数据集发生变化,则根据全局设置更改内存中的数据。步骤S108,将更改的内存数据写入配置文件中。如果内存中的数据有变化,则写入到配置文件中,能保证磁盘中的配置文件的实时更新,防止软件程序因为非法操作关闭而导致之前的设置信息丢失。步骤S110,第二进程根据更新后的配置文件共享第一进程的全局设置。由于第一进程的全局设置实时更新在配置文件中,通过更新后的配置文件,第二进程对第一进程的全局设置实现共享,从而能在多个进程之间实现同步设置。在第二实施例中,如图2所示,该方法流程示出了主进程设置,子进程响应的全局设置方法,具体包括以下步骤步骤S202,主进程读取配置文件,将配置文件中的设置信息加入内存。通常,主进程为软件的主程序,是软件的主要实体,实现软件大部分的功能。子进程为一些辅助类的程序,实现一些辅助的功能,被主程序调用。主进程可以查看所有子进程的配置文件,而子进程只能查看自身的配置文件,不能查看主进程和其他子进程的配置文件。该实施例中,步骤S202的具体过程是主进程读取主进程的配置文件,将配置文件中的设置信息加入主进程的内存空间。步骤S204,通过主进程的用户界面进行全局设置。步骤S206,根据主进程的全局设置更改内存中的数据。用户改变了主进程的全局设置内容后,主进程的用户界面数据集发生变化,根据全局设置的内容更改主进程的内存空间中的数据。步骤S208,判断主进程全局设置的对象是否为子进程的设置对象,若是,则进入步骤S210,否则进入步骤S218。步骤S210,主进程将更改的内存数据写入主进程的配置文件及子进程的配置文件中。由于主进程全局设置的对象也是子进程的设置对象,主进程具有子进程的配置文件的查看权限,因此可将主进程的内存空间中更改的数据写入主进程配置文件,并写入子进程的配置文件,主进程和子进程的配置文件都进行刷新。步骤S212,主进程通知子进程。该实施例中,主进程利用消息传递的方式通知子进程其设置内容发生变化。也可以通过管道、剪贴板、共享内存、文件映射等方式实现进程之间的通信。步骤S214,子进程读取子进程的配置文件,将子进程的配置文件中的设置信息加入内存。子进程在收到主进程的通知后,读取磁盘中的子进程的配置文件,获取该配置文件中的设置信息,加入到子进程的内存空间中。步骤S216,根据内存中的数据刷新子进程的用户界面。子进程获取其内存空间中的数据,根据内存空间中的数据刷新用户界面。由于子进程的配置文件是根据主进程的全局设置实时更新的配置文件,子进程根据该配置文件进行自身设置的更新,子进程刷新用户界面后即可执行设置功能,实现了主进程与子进程之间的同步设置。步骤S218,主进程将更改的内存数据写入主进程的配置文件中。当主进程全局设置的对象不是子进程的设置对象时,则更新自身的配置文件即可,主进程直接执行设置功能。下面以一个具体的实例说明第二实施例的具体过程,如图6所示,该实例中,主进程为QQ影像主程序,其子进程为QQ影像查看器,在QQ影像主程序中通过选项对QQ影像进行设置,例如,将鼠标滚轮设置为图片缩放,即,鼠标滚轮滑动,则图片进行缩放。由于该设置也是针对QQ影像查看器的设置,因此影像查看器中也相应的会在右键鼠标的设置中将单图查看设置为鼠标滚轮为缩放。在第三实施例中,如图3所示,该方法流程示出了子进程设置,主进程刷新的全局设置方法,具体包括以下步骤步骤S302,子进程读取配置文件,将配置文件中的设置信息加入内存。子进程只具有查看自身配置文件的权限,因此子进程读取自身的配置文件,获取该配置文件中的设置信息,加入子进程的内存空间。步骤S304,通过子进程的用户界面进行全局设置。步骤S306,根据子进程的全局设置更改内存数据。用户启动子进程的设置功能后,子进程的用户界面从子进程的内存空间中查询各种需要展示的信息,并将这些信息初始化保存在用户界面数据集,当子进程的全局设置内容发生变化,则用户界面数据集发生变化,根据设置的内容更改子进程的内存空间中的数据。步骤S308,将更改后的内存数据写入子进程的配置文件中。子进程的内存空间中的数据更新,则实时将更新的数据写入子进程的配置文件中,能有效防止软件程序由于非法操作关闭导致之前的设置信息丢失。步骤S310,子进程通知主进程。该实施例中,子进程利用消息传递的方式通知主进程其设置内容发生变化。也可以通过管道、剪贴板、共享内存、文件映射等方式实现进程之间的通信。步骤S312,主进程读取子进程的配置文件,将子进程的配置文件中的设置信息加入内存。由于主进程具有所有配置文件的查看权限,因此可以读取子进程的配置文件,获取子进程的配置文件中的设置信息,加入主进程的内存空间中。步骤S314,根据内存中的数据刷新主进程的用户界面。主进程的用户界面在主进程的内存空间查询需要展示的信息,根据内存空间中的数据刷新用户界面。因此,当子进程进行全局设置时,主进程根据子进程的设置刷新用户界面,实现了主进程与子进程之间同步设置。下面以一个具体的实例说明第三实施例的具体过程,如图6所示,该实例中,主进程为QQ影像主程序,其子进程为QQ影像查看器,在QQ影像查看器中能通过点击鼠标右键弹出选项对QQ影像查看器进行设置,例如在影像查看器的右键鼠标的设置中将单图查看设置为鼠标滚轮为缩放,由于QQ影像主程序能查看子进程QQ影像查看器的配置文件,因此能获取QQ影像查看器的配置,并刷新QQ影像的用户界面。如图6所示,QQ影像设置选项会相应的将鼠标滚轮设置为图片缩放。在第四实施例中,如图4所示,一种基于多进程的全局设置系统,该系统包括相互通信的第一进程10和第二进程20,其中,第一进程10包括第一信息获取模块110用于读取配置文件,将配置文件中的配置信息加入内存。第一进程10进行全局设置前需进行数据初始化,即从磁盘中读取配置文件,将配置文件中的设置信息在第一进程10的内存空间中复制一个映像。第一设置模块120用于通过第一进程10的用户界面进行全局设置。第一更新模块130用于根据全局设置更改内存中的数据,将更改的数据写入配置文件中。当通过第一进程10的用户界面进行全局设置后,改变了设置内容,用户界面数据集发生变化,则根据全局设置更改内存中的数据,并将更改的内存数据写入到配置文件中。第二进程20根据更新后的配置文件共享第一进程10的全局设置。由于第一进程10的全局设置实时更新在配置文件中,通过更新后的配置文件,第二进程20对第一进程10的全局设置实现共享,从而在多个进程之间实现同步设置。在一个实施例中,第一进程为主进程,所述第二进程为子进程。第一更新模块130用于当主进程全局设置的对象为子进程的设置对象时,将更改的内存数据写入主进程的配置文件及子进程的配置文件中。如图5所示,该实施例中,第一进程10还包括通信模块140,用于当主进程全局设置的对象为子进程的设置对象时通知子进程。第二进程20包括第二信息获取模块210,用于读取子进程的配置文件,将子进程的配置文件中的设置信息加入内存。第二设置模块220,用于根据内存中的数据刷新子进程的用户界面。在另一个实施例中,第一进程为子进程,所述第二进程为主进程。第一更新模块130用于将更新后的内存数据写入子进程的配置文件中。如图5所示,该实施例中,第一进程10包括通信模块140,用于在第一更新模块130将更新后的内存数据写入子进程的配置文件后通知主进程。第二进程20包括第二信息获取模块210用于读取所述子进程的配置文件,将子进程的配置文件中的设置信息加入内存;第二设置模块220用于根据内存中的数据刷新主进程的用户界面。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种基于多进程的全局设置方法,包括以下步骤第一进程读取配置文件,将配置文件中的设置信息加入内存;通过第一进程的用户界面进行全局设置;根据所述全局设置更改内存中的数据;将更改的内存数据写入配置文件中;第二进程根据更新后的配置文件共享第一进程的全局设置。
2.根据权利要求1所述的基于多进程的全局设置方法,其特征在于,所述第一进程为主进程,所述第二进程为子进程;所述将更改的内存数据写入配置文件中的步骤为当主进程全局设置的对象为子进程的设置对象时,主进程将更改的内存数据写入主进程的配置文件及子进程的配置文件中。
3.根据权利要求2所述的基于多进程的全局设置方法,其特征在于,所述第二进程根据更新后的配置文件共享第一进程的全局设置的步骤为主进程通知子进程,子进程读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存,根据内存中的数据刷新子进程的用户界面。
4.根据权利要求1所述的基于多进程的全局设置方法,其特征在于,所述第一进程为子进程,所述第二进程为主进程;所述将更改后的内存数据写入配置文件中的步骤为将更改后的内存数据写入子进程的配置文件中。
5.根据权利要求4所述的基于多进程的全局设置方法,其特征在于,所述第二进程根据更新后的配置文件共享第一进程的全局设置的步骤为子进程通知主进程,主进程读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存,根据内存中的数据刷新主进程的用户界面。
6.一种基于多进程的全局设置系统,其特征在于,包括相互通信的第一进程和第二进程,所述第一进程包括第一信息获取模块,读取配置文件,将配置文件中的设置信息加入内存;第一设置模块,通过第一进程的用户界面进行全局设置;第一更新模块,根据所述全局设置更改内存中的数据,将更改的内存数据写入配置文件中;所述第二进程根据更新后的配置文件共享第一进程的全局设置。
7.根据权利要求6所述的基于多进程的全局设置系统,其特征在于,所述第一进程为主进程,所述第二进程为子进程;所述第一更新模块用于当主进程全局设置的对象为子进程的设置对象时,将更改的内存数据写入主进程的配置文件及子进程的配置文件中。
8.根据权利要求7所述的基于多进程的全局设置系统,其特征在于,所述第一进程还包括通信模块,当主进程全局设置的对象为子进程的设置对象时通知子进程;所述第二进程包括第二信息获取模块,读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存;第二设置模块,根据内存中的数据刷新子进程的用户界面。
9.根据权利要求6所述的基于多进程的全局设置系统,其特征在于,所述第一进程为子进程,所述第二进程为主进程;所述第一更新模块用于将更新后的内存数据写入子进程的配置文件中。
10.根据权利要求9所述的基于多进程的全局设置系统,其特征在于,所述第一进程还包括通信模块,在所述第一更新模块将更新后的内存数据写入子进程的配置文件后通知主进程;所述第二进程包括第二信息获取模块,读取所述子进程的配置文件,将所述子进程的配置文件中的设置信息加入内存;第二设置模块,根据内存中的数据刷新主进程的用户界面。
全文摘要
一种基于多进程的全局设置方法,包括以下步骤第一进程读取配置文件,将配置文件中的设置信息加入内存;通过第一进程的用户界面进行全局设置;根据所述全局设置更改内存中的数据;将更改的内存数据写入配置文件中;第二进程根据更新后的配置文件共享第一进程的全局设置。采用上述方法,能实现多进程之间同步设置。此外,还提供一种基于多进程的全局设置系统。
文档编号G06F9/46GK102567081SQ20101057770
公开日2012年7月11日 申请日期2010年12月7日 优先权日2010年12月7日
发明者杨洋, 陈栋, 黄飞跃 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1