一种多路控制接口调用的方法、装置及计算机可读介质制造方法及图纸

技术编号:29757037 阅读:17 留言:0更新日期:2021-08-20 21:10
本申请实施例公开了一种多路控制接口调用的方法,包括:主程序创建多个并行线程,所述线程分别调用相应的处理接口;通过加载函数加载动态库;通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同步完成多路测试程序。相应地,本发明专利技术实施例提供了一种装置,解决了现有技术中程序容易出错的问题,提升了开发效率。

【技术实现步骤摘要】
一种多路控制接口调用的方法、装置及计算机可读介质
本申请涉及数据处理
,尤其涉及一种多路控制接口调用的方法、装置及计算机可读介质。
技术介绍
在工厂的电子产品生产线上,通常有下载、校准综测、功能测试、写号等工站,这些工站多数都运行着PC端的多路测试程序(即一个测试程序,通过USB或串口同时连接着几台电子设备进行通讯测试)。多路测试程序的使用有利于提高生产效率,降低人力成本。而实现多路测试程序的基本思路是主程序创建多个并行线程,共享一个控制读写设备的接口,从而与各个设备进行通讯。控制读写设备的接口是多路测试程序的核心部分,在传统的实现方法是:各个线程共享同一个函数代码,各路数据需要分成数组形式储存,而且需要考虑调用过程中某个通道使用资源的状态,例如第一路在调用共享函数时,第二路就要考虑不要破坏第一路的共享函数的当前状态,为了避免这些数据发生冲突和干扰的情况,往往需要引入相对复杂的线程安全保护机制,比如加锁和解锁,同步和互斥,可重入性函数等技术。如果稍微处理不当,就容易引起程序数据错误。这样的后果就是造成开发难,周期长,易出错。
技术实现思路
本申请实施例提供一种一种多路控制接口调用的方法、装置及计算机可读介质,用于解决现有技术中程序数据错误的问题,提升开发效率。一种多路控制接口调用的方法,其特征在于,包括:主程序创建多个并行线程,所述线程分别调用相应的处理接口;通过加载函数加载动态库;通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同步完成多路测试程序。可选地,所述方法还包括:所述主程序对共享控制接口的实现代码进行封装,并编译成一个DLL动态库,以便通过加载函数对所述动态库进行加载,所述封装的动态库为正本库。可选地,所述方法还包括:通过复制函数动态复制出多个所述动态库,所述复制出的动态库为副本库。可选地,所述方法还包括:在程序退出后,释放并清除相应的副本库,保留正本库。可选地,所述方法还包括:在主程序执行过程中,动态更新所述正本库内容后,所述主程序同步动态更新所述副本库内容。本专利技术实施例还提供一种多路控制接口调用的装置,所述装置包括:创建模块,用于创建多个并行线程,所述线程分别调用相应的处理接口;加载模块,用于通过加载函数加载动态库;调用模块,用于通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同步完成多路测试程序。可选地,所述装置还包括:封装模块,用于对共享控制接口的实现代码进行封装,并编译成一个DLL动态库,以便通过加载函数对所述动态库进行加载,所述封装的动态库为正本库。可选地,所述装置还包括:复制模块,用于通过复制函数动态复制出多个所述动态库,所述复制出的动态库为副本库。本专利技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述方法。上述多路控制接口调用的方法及装置,通过封装共享程序为DLL动态库,并复制该DLL动态库至不同的端口设备,解决了现有技术中程序出错的概率,提高了开发效率。附图说明为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。图1为现有技术中多路控制接口调用方法的流程图;图2为一个实施例中多路控制接口调用方法的流程图;图3为一个实施例中多路控制接口调用方法的流程图;图4为一个实施例中多路控制接口调用装置的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。图1为现有技术中多路控制接口调用的流程图。如图1所示,现有技术的实现方法是:各个线程共享同一个函数代码,各路数据需要分成数组形式储存,而且需要考虑调用过程中某个通道使用资源的状态,例如第一路在调用共享函数时,第二路就要考虑不要破坏第一路的共享函数的当前状态,为了避免这些数据发生冲突和干扰的情况,往往需要引入相对复杂的线程安全保护机制,比如加锁和解锁,同步和互斥,可重入性函数等技术。针对现有技术的不足,本专利技术实施例对现有技术进行了改良。如图2所示,该方法包括:步骤202,主程序创建多个并行线程,所述线程分别调用相应的处理接口;主程序可以是传统的main函数,也可以是一段代码,还可以是一个特定的函数,通常而言运行在各类操作系统中,由不同的装置通过主处理器执行。需要说明的是,本专利技术实施例中可以应用于工业测试的场景中,即,通过PC来执行所述主程序。主程序创建多个并行线程,例如,例如WINDOWS的线程技术,可同时创建4个线程或者8个线程,每个线程用于调用相应的处理接口。此外,本专利技术实施例还包括:所述主程序对共享控制接口的实现代码进行封装,并编译成一个DLL动态库,以便通过加载函数对所述动态库进行加载,所述封装的动态库为正本库。DLL是DynamicLinkLibrary的缩写。DLL是一个包含可由多个程序,同时使用的代码和数据的库。通过使用DLL,程序可以实现模块化,由相对独立的组件组成。需要说明的是,所述方法还包括:通过复制函数(比如VC++的CopyFile函数)动态复制出多个所述动态库,所述复制出的动态库为副本库。步骤204,通过加载函数加载动态库;可选地,所述方法还包括:在主程序执行过程中,动态更新所述正本库内容后,所述主程序同步动态更新所述副本库内容。步骤206,通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同本文档来自技高网...

【技术保护点】
1.一种多路控制接口调用的方法,其特征在于,包括:/n主程序创建多个并行线程,所述线程分别调用相应的处理接口;/n通过加载函数加载动态库;/n通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同步完成多路测试程序。/n

【技术特征摘要】
1.一种多路控制接口调用的方法,其特征在于,包括:
主程序创建多个并行线程,所述线程分别调用相应的处理接口;
通过加载函数加载动态库;
通过调用所述动态库至相应的不同端口设备,以控制所述不同端口设备同步完成多路测试程序。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述主程序对共享控制接口的实现代码进行封装,并编译成一个DLL动态库,以便通过加载函数对所述动态库进行加载,所述封装的动态库为正本库。


3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
通过复制函数动态复制出多个所述动态库,所述复制出的动态库为副本库。


4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在程序退出后,释放并清除相应的副本库,保留正本库。


5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在主程序执行过程中,动态更新所述正本库内容后,所述主程序同步动态更新所述副本库内容。


6.一种多路控制接口调用的...

【专利技术属性】
技术研发人员:柯行河何伟廖宏俭
申请(专利权)人:深圳信可通讯技术有限公司
类型:发明
国别省市:广东;44

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

1