基于socket的跨进程通信方法、介质及电子设备技术

技术编号:31507806 阅读:14 留言:0更新日期:2021-12-22 23:41
本发明专利技术提供一种基于socket的跨进程通信方法、介质及电子设备,所述方法包括:初始化socket监听程序并开始监听数据;在接收到第一算法调用请求时,调用第一算法库中的第一目标算法,其中,所述第一算法调用请求由链接于第二算法库的第一程序所发送,所述第一算法库包括一种或多种算法,所述第二算法库包括所述第一算法库中所有算法的接口和参数信息;在接收到第二算法调用请求时,调用所述第一算法库中的第二目标算法,其中,所述第二算法调用请求由链接于所述第二算法库的第二程序所发送,且所述第一目标算法与所述第二目标算法相同或不同。所述基于socket的跨进程通信方法能够实现所述第一程序和所述第二程序之间的跨进程通信。通信。通信。

【技术实现步骤摘要】
基于socket的跨进程通信方法、介质及电子设备


[0001]本专利技术涉及通信领域,特别是涉及基于socket的跨进程通信方法、介质及电子设备。

技术介绍

[0002]算法库又称作函数库,是由系统或用户建立的、具有一定功能的算法的集合。存放于算法库中的算法称作库算法,库算法通常具有明确的功能、入口调用参数和返回值。现有技术中,算法库主要存放库算法的名称和对应的代码,以及连接过程中所需要的重定位信息。在使用时,程序只需包含相应的算法库即可直接调用其中的库算法,调用完成后返回执行结果即可实现同进程通信。
[0003]当不在同一个存储空间内的两个应用需要同时调用算法库中的同一库算法时,需要在这两个应用之间进行跨进程通信以便实现参数共享。然而,专利技术人在实际应用中发现,由于全局变量不支持跨进程共享,因此,对于任一库算法,当一个应用获取该库算法中的全局变量以后,其他应用无法通过共享全局变量的方式来实现不同应用之间的参数共享,故,如何提供一种能够实现跨进程通信的方案已成为相关技术人员亟需解决的技术问题之一。

技术实现思路

[0004]鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种基于socket的跨进程通信方法、介质及电子设备,用于解决现有技术中存在的上述相关问题。
[0005]为实现上述目的及其他相关目的,本专利技术的第一方面提供一种基于socket的跨进程通信方法,所述方法包括:初始化socket监听程序并开始监听数据;在接收到第一算法调用请求时,调用第一算法库中的第一目标算法,其中,所述第一算法调用请求由链接于第二算法库的第一程序所发送,所述第一算法库包括一种或多种算法,所述第二算法库包括所述第一算法库中所有算法的接口和参数信息;在接收到第二算法调用请求时,调用所述第一算法库中的第二目标算法,其中,所述第二算法调用请求由链接于所述第二算法库的第二程序所发送,且所述第一目标算法与所述第二目标算法相同或不同。
[0006]于所述第一方面的一实施例中,调用所述第一算法库中的所述第一目标算法的实现方法包括:创建第一线程以调用所述第一算法库中的所述第一目标算法;调用所述第一算法库中的所述第二目标算法的实现方法包括:创建第二线程以调用所述第一算法库中的所述第二目标算法。
[0007]于所述第一方面的一实施例中,当所述第一线程调用的所述第一目标算法执行完成以后,将执行结果通过socket发送给所述第一程序;和/或当所述第二线程调用的所述第二目标算法执行完成以后,将执行结果通过socket发送给所述第二程序。
[0008]于所述第一方面的一实施例中,所述第一算法调用请求由所述第一程序利用所述第二算法库通过socket发送;和/或所述第二算法调用请求由所述第二程序利用所述第二算法库通过socket发送。
[0009]于所述第一方面的一实施例中,所述方法还包括:调整所述第一程序链接的算法库,以使所述第一程序链接于所述第一算法库;调整所述第二程序链接的算法库,以使所述第二程序链接于所述第一算法库。
[0010]本专利技术的第二方面提供一种基于socket的跨进程通信方法,应用于从程序,所述方法包括:链接至第二算法库,其中,所述第二算法库包括第一算法库中所有算法的接口和参数信息,所述第一算法库包括一种或多种算法;利用所述第二算法库通过socket发送算法调用请求至主程序,以使所述主程序调用所述第一算法库中的目标算法。
[0011]于所述第二方面的一实施例中,所述方法还包括:当不需要进行跨进程通信时,调整所述从程序链接的算法库,以使所述从程序链接至所述第一算法库。
[0012]本专利技术的第三方面提供一种基于socket的跨进程通信方法,应用于一软件系统,所述软件系统包括主程序、第一程序和第二程序,其中:所述第一程序和所述第二程序采用本专利技术第二方面任一项所述基于socket的跨进程通信方法向所述主程序发送算法调用请求;所述主程序采用本专利技术第一方面任一项所述基于socket的跨进程通信方法响应所述第一程序和所述第二程序发送的算法调用请求。
[0013]本专利技术的第四方面提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本专利技术第一方面、第二方面或第三方面任一项所述基于socket的跨进程通信方法。
[0014]本专利技术的第五方面提供一种电子设备,所述电子设备包括:存储器,存储有一计算机程序;处理器,与所述存储器通信相连,调用所述计算机程序时执行本专利技术第一方面、第二方面或第三方面任一项所述基于socket的跨进程通信方法。
[0015]如上所述,本专利技术一个或多个实施例中所述基于socket的跨进程通信方法具有以下有益效果:
[0016]所述基于socket的跨进程通信方法在接收到第一算法调用请求时,调用第一算法库中的第一目标算法,在接收到第二算法调用请求时,调动所述第一算法库中的第二目标算法。由于对所述第一目标算法和所述第二目标算法的调用均在同一进程中实现,因此,所述第一目标算法和所述第二目标算法在调用中可以共享彼此的参数。对于第一程序和第二程序来说,这种参数共享使得所述第一程序能够获取所述第二程序的参数,所述第二程序能够获取所述第一程序的参数,故,所述基于socket的跨进程通信方法能够实现所述第一程序和所述第二程序之间的跨进程通信。
附图说明
[0017]图1显示为本专利技术所述基于socket的跨进程通信方法于一具体实施例中的流程图。
[0018]图2显示为本专利技术所述另一种基于socket的跨进程通信方法于一具体实施例中的流程图。
[0019]图3显示为本专利技术所述又一种基于socket的跨进程通信方法于一具体实施例中的流程图。
[0020]图4显示为本专利技术所述又一种基于socket的跨进程通信方法于一具体实施例中的流程图。
[0021]图5显示为本专利技术所述电子设备于一具体实施例中的结构示意图。
[0022]元件标号说明
[0023]500
ꢀꢀꢀꢀꢀꢀ
电子设备
[0024]510
ꢀꢀꢀꢀꢀꢀ
存储器
[0025]520
ꢀꢀꢀꢀꢀꢀ
处理器
[0026]530
ꢀꢀꢀꢀꢀꢀ
显示器
[0027]S11~S13 步骤
[0028]S21~S22 步骤
[0029]S31~S32 步骤
[0030]S41~S49 步骤
具体实施方式
[0031]以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0032]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本专利技术的基本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于socket的跨进程通信方法,其特征在于,所述方法包括:初始化socket监听程序并开始监听数据;在接收到第一算法调用请求时,调用第一算法库中的第一目标算法,其中,所述第一算法调用请求由链接于第二算法库的第一程序所发送,所述第一算法库包括一种或多种算法,所述第二算法库包括所述第一算法库中所有算法的接口和参数信息;在接收到第二算法调用请求时,调用所述第一算法库中的第二目标算法,其中,所述第二算法调用请求由链接于所述第二算法库的第二程序所发送,且所述第一目标算法与所述第二目标算法相同或不同。2.根据权利要求1所述的方法,其特征在于:调用所述第一算法库中的所述第一目标算法的实现方法包括:创建第一线程以调用所述第一算法库中的所述第一目标算法;调用所述第一算法库中的所述第二目标算法的实现方法包括:创建第二线程以调用所述第一算法库中的所述第二目标算法。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述第一线程调用的所述第一目标算法执行完成以后,将执行结果通过socket发送给所述第一程序;和/或当所述第二线程调用的所述第二目标算法执行完成以后,将执行结果通过socket发送给所述第二程序。4.根据权利要求1所述的方法,其特征在于:所述第一算法调用请求由所述第一程序利用所述第二算法库通过socket发送;和/或所述第二算法调用请求由所述第二程序利用所述第二算法库通过socket发送。5.根据权利要求1所述的方法,其特征在于,当不需要进行跨进程通信时,所述方法还包括:调整所述第一程序链接的算法库,以使所述第一程序...

【专利技术属性】
技术研发人员:洪锦坤
申请(专利权)人:瑞芯微电子股份有限公司
类型:发明
国别省市:

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

1