一种模块间调用的方法及装置制造方法及图纸

技术编号:9198116 阅读:129 留言:0更新日期:2013-09-26 02:20
本发明专利技术实施例公开了一种模块间调用的方法,包括:第一模块构造一条调用指令,并向第二模块发送所述调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID,以便所述第二模块执行所述第一模块调用的功能;所述第一模块接收所述第二模块发送的功能执行完毕消息。本发明专利技术实施例还公开了相应的模块间调用的装置。使用本发明专利技术实施例公开的模块间调用的方法和装置,能够更好的协调模块间功能的调用,促进模块之间的分工协作,有效的解决现有的模块间协调性差的问题,进而能够保证多个模块分工合作完成一个较大的任务。

【技术实现步骤摘要】
一种模块间调用的方法及装置
本专利技术涉及计算机
,尤其涉及一种模块间调用的方法及装置。
技术介绍
在Windows程序系列构架中,按功能划分,可以被分为前端程序和后台服务程序。前端程序用于展示用户界面(UI),后台服务程序用于做数据的收集、整理、分发。用户界面会随着客户的需求与侧重点发生变化而变化,但当一个体系稳定以后,其后台数据服务部分几乎是不变的。基于此,将前端用户界面的呈现与后台数据的处理分开,不但有利于产品的更新与迭代,也有利于相关模块的设计和维护,相关技术人员可以将有限的精力投入到和自己最相关的技术模块中去提升系统的稳定性与专业性;同时体系功能的分离,也有利于对资源的合理使用(例如对内存、网络、磁盘读写)。将后台的数据处理模块化以后,虽然有上述的多种优点,但对于模块之间的相互协调,分工合作共同完成一个较大的任务也提出了一个较大的挑战。
技术实现思路
为了解决现有技术中存在的模块间协调性差的问题,本专利技术实施例提出一种模块间调用的方法和装置。第一方面,本专利技术提供一种模块间调用的方法,包括:第一模块构造一条调用指令,并向第二模块发送所述调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID,以便所述第二模块执行所述第一模块调用的功能;所述第一模块接收所述第二模块发送的功能执行完毕消息。第二方面,本专利技术提供另一种模块间调用的方法,包括:第二模块接收第一模块发送的调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID;根据所述第一模块调用的功能代号确定所述第二模块中的功能,代入执行所述功能所需的参数,执行所述功能;所述第二模块向所述第一模块发送所述功能执行完毕的消息。第三方面,本专利技术提供一种用于模块间调用的装置,包括:构造模块,用于构造一条调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID;发送模块,用于向第二模块发送所述构造模块构造的所述调用指令;接收模块,用于接收所述第二模块发送的功能执行完毕消息。第四方面,本专利技术提供另一种用于模块间调用的装置,包括:接收模块,用于接收第一模块发送的调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID;执行模块,用于根据所述接收模块接收的功能代号确定第二模块中的功能,代入执行所述功能所需的参数,执行所述功能;发送模块,用于在所述执行模块执行完所述功能后,向所述第一模块发送所述功能执行完毕的消息。使用本专利技术实施例公开的模块间调用的方法和装置,能够更好的协调模块间功能的调用,促进模块之间的分工协作,有效的解决现有的模块间协调性差的问题,进而能够保证多个模块分工合作完成一个较大的任务。附图说明图1所示是本专利技术实施例提供的Windows消息多级控制中心的示意图;图2所示是本专利技术实施例提供的一种模块间调用的方法示意图;图3所示是本专利技术实施例提供的另一种模块间调用的方法的示意图;图4所示是本专利技术实施例提供的进程间功能调用的方法流程图;图5所示是本专利技术实施例提供的一种用于模块间调用的装置的结构示意图;图6所示是本专利技术实施例提供的另一种用于模块间调用的装置的结构示意图;图7所示是本专利技术实施例提供的另一种用于模块间调用的装置的结构示意图;图8所示是本专利技术实施例提供的另一种用于模块间调用的装置的结构示意图;图9所示是本专利技术实施例提供的另另一种用于模块间调用的装置的结构示意图。具体实施方式为了更好的公开本专利技术实施例提供的方法和装置,本实施例先对将要使用到的一些概念做一些简单的说明。函数:在计算机系统中,函数又可以称为函数过程,是指一系列程序语句的集合,用于完成某些特定的工作——比如处理文本、控制输入或计算数值等。函数调用:通过在某个模块中引入函数名称和所需的参数,可在该模块中执行(或称调用)该函数。从函数的调用方式上,可以将此分为三类:同步调用、异步调用和回调。同步调用是一种阻塞式调用,调用方要等待被调用方执行完毕才返回,它是一种单向调用;回调则属于一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种信息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回调和异步调用的关系非常紧密,通常我们使用回调来实现异步消息的注册,通过异步调用来实现消息的通知。模块间的函数调用:指在多个模块之间,由一个模块调用另一个模块的某些功能(即函数),当被调用函数执行完后,结果返回或不返回调用模块。在本专利技术实施例中采用一个GUID(GloballyUniqueIdentifier,全局唯一标识符)或UUID(UniversallyUniqueIdentifier,通用唯一识别码)。GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符的场景下。在本专利技术实施例中,使用它来记录模块中回调函数的位置,当调用模块收到被调用模块返回的结果以后,返回到调用进程执行后续处理。Windows消息机制:Windows消息控制中心一般是三层结构,其顶端是Windows内核,Windows内核维护着一个消息队列;第二级控制中心从这个消息队列中获取属于自己管辖的消息,然后做出处理,有些消息由第二级控制中心直接处理,有些消息还要发送给下一级窗体(Window)或控件(Control)。第二级控制中心一般是各Windows应用程序的Application对象。第三级控制中心就是Windows窗体对象,每一个窗体都有一个默认的窗体过程,这个过程负责处理各种接收到的消息。图1即为Windows消息多级控制中心的示意图。其中,windows指windows操作系统;窗口即windows窗口;窗体包括窗口,以及有句柄的控件;control指控件,控件本身也可能是一个window,也可能不是;Application即应用程序,应用程序也可能不会用到Windows消息机制,在本专利技术实施例中涉及有消息循环的应用程序;每一个UIApplication即用户界面应用程序,肯定有一个Window,如果有多个Window也会有一个MainWindow即主窗体。消息打包:指将某些信息集成在一条消息里,收到该消息可以通过某种约定好的格式解开,得到之前集成到消息里的内容。在前述公开的内容基础上,本专利技术一个实施例提供一种模块间调用的方法。图2所示即为一种模块间调用的方法示意图,依据该图,详述各步骤如下。步骤201、第一模块构造一条调用指令,并向第二模块发送所述调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID,以便所述第二模块执行所述第一模块调用的功能;其中,在本专利技术实施例中,第一模块作为调用功能的一方,第二模块作为被调用方,执行第一模块所调用的功能;第二模块执行的功能即是前面所述的函数,功能的调用方式即是前面公开的几种函数调用方式,本文档来自技高网...
一种模块间调用的方法及装置

【技术保护点】
一种模块间调用的方法,其特征在于,包括:第一模块构造一条调用指令,并向第二模块发送所述调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID,以便所述第二模块执行所述第一模块调用的功能;所述第一模块接收所述第二模块发送的功能执行完毕消息。

【技术特征摘要】
1.一种模块间调用的方法,其特征在于,包括:第一模块构造一条调用指令,并向第二模块发送所述调用指令,所述调用指令中包括所述第一模块调用的功能代号、调用方式、执行所述功能所需的参数和全局唯一标识符GUID,以便所述第二模块执行所述第一模块调用的功能;所述第一模块接收所述第二模块发送的功能执行完毕消息,在所述第一模块向所述第二模块发送调用指令之前,还包括:所述第一模块记录构造所述调用指令时程序执行的位置,并生成所述GUID,对应所述程序执行的位置。2.根据权利要求1所述的方法,其特征在于,还包括:所述第一模块接收所述第二模块发送的执行所述功能得到的结果,以及所述GUID。3.根据权利要求1所述的方法,其特征在于,所述第一模块接收所述第二模块发送的功能执行完毕消息中包括所述第二模块执行所述功能得到的结果,以及所述GUID。4.根据权利要求2或3所述的方法,其特征在于,所述第一模块使用所述GUID定位所述程序执行的位置,并使用所述第二模块执行所述功能得到的结果,从所述程序执行的位置继续执行后续操作。...

【专利技术属性】
技术研发人员:牟芝庆
申请(专利权)人:天脉聚源北京传媒科技有限公司
类型:发明
国别省市:

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

1