一种应用程序运行方法、装置和系统制造方法及图纸

技术编号:23399641 阅读:36 留言:0更新日期:2020-02-22 11:57
本申请公开了一种应用程序运行方法、装置和系统,该方法包括:创建主协程;通过主协程顺序执行应用程序的代码;在主协程执行到待调用的目标服务时,通过主协程创建与目标服务对应的子协程,通过子协程向服务器发送目标服务的服务调用请求;在子协程向服务器发送服务调用请求之后,通过子协程切换到主协程运行,以通过主协程顺序执行应用程序中尚未被执行的代码;在主协程检测到服务器针对目标服务返回的服务数据反馈通知时,主协程控制切换到目标服务对应的子协程,并通过运行目标服务对应的子协程从服务器接收目标服务对应的服务数据。本申请的方案可以提高应用程序的运行性能。

An application running method, device and system

【技术实现步骤摘要】
一种应用程序运行方法、装置和系统
本申请涉及程序开发与运行
,尤其涉及一种应用程序运行方法、装置和系统。
技术介绍
应用程序是使用者针对某种应用目的所开发的软件。由于开发应用程序的复杂度较高,开发一套应用程序需要耗费较多的开发资源以及较长的时间。而且,为了提高应用程序的运行性能,可能需要应用程序中多个逻辑分支并行执行,然而,如果需要应用程序中能够实现多个逻辑分支的同步执行,对应用程序开发的要求更高。因此,如何能够在降低开发复杂度的前提下,提高应用程序的运行性能是本领域技术人员迫切需要解决的技术问题。
技术实现思路
有鉴于此,本申请提供了一种应用程序运行方法、装置和系统,以在较低的开发复杂度的前提下,提高开发出的应用程序的运行性能。为实现上述目的,一方面,本申请提供了一种应用程序运行方法,包括:创建主协程;通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标服务的服务调用请求,所述目标服务属于所述至少一个待调用的服务;在所述子协程向服务器发送所述服务调用请求之后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码;在所述主协程检测到所述服务器针对所述目标服务返回的服务数据反馈通知时,所述主协程控制切换到所述目标服务对应的子协程,并通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据。优选的,所述通过运行所述子协程向服务器发送所述目标服务的服务调用请求,包括:通过运行所述子协程从配置的连接池中选取空闲的连接组件,并基于选取的连接组件,向服务器发送所述目标服务的服务调用请求。优选的,在所述通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据之后,还包括:在所述子协程确认完成所述服务数据的接收后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码。优选的,所述应用程序中还配置有待调用的至少一个注解组件,所述注解组件为配置的注解组件库中的注解组件;所述方法还包括:在主协程执行应用程序的代码过程中,在检测到待调用的注解组件时,则从所述组件库中调用所述注解组件,以获得所述注解组件所提供的注解。优选的,在运行所述应用程序之前,还包括:在客户端展现所述服务器可供调用的服务组件;根据用户的第一配置操作,在应用程序中配置需要调用的服务组件对应的服务;展现客户端已加载的连接池和注解组件池;基于用户的第二配置操作,配置所述连接池中可供所述应用程序调用的连接数量和至少一个连接;基于用户的第三配置操作,配置注解组件池中可供所述应用程序调用的注解组件。又一方面,本申请还提供了一种应用程序运行装置,包括:主协程创建单元,用于创建主协程;代码执行单元,用于通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;子协程运行单元,用于在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标服务的服务调用请求,所述目标服务属于所述至少一个待调用的服务;第一协程切换单元,用于在所述子协程向服务器发送所述服务调用请求之后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码;第二协程切换单元,用于在所述主协程检测到所述服务器针对所述目标服务返回的服务数据反馈通知时,所述主协程控制切换到所述目标服务对应的子协程,并通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据。优选的,所述子协程运行单元在通过运行所述子协程向服务器发送所述目标服务的服务调用请求时,具体用于:通过运行所述子协程从配置的连接池中选取空闲的连接组件,并基于选取的连接,向服务器发送所述目标服务的服务调用请求。优选的,还包括:第三协程切换单元,用于在所述通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据之后,在所述子协程确认完成所述服务数据的接收后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码。优选的,所述应用程序中还配置有待调用的至少一个注解组件,所述注解组件为配置的注解组件库中注解组件;所述装置还包括:注解组件运行单元,用于在主协程执行应用程序的代码过程中,在检测到待调用的注解组件时,则从所述组件库中调用所述注解组件,以获得所述注解组件所提供的注解。又一方面,本申请还提供了一种应用程序运行系统,包括:客户端和服务器;所述客户端中加载有可供应用程序调用的连接池和注解组件池;服务器配置可运行的多个服务组件;所述客户端,用于在需要运行在所述客户端中开发的应用程序时,创建主协程;通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标服务的服务调用请求,所述目标服务属于所述至少一个待调用的服务;在所述子协程向服务器发送所述服务调用请求之后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码;在所述主协程检测到所述服务器针对所述目标服务返回的服务数据反馈通知时,所述主协程控制切换到所述目标服务对应的子协程,并通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据;所述服务器,用于根据所述客户端的子协程发送的服务调用请求,从服务组件中确定所述服务调用请求所请求调用的目标服务组件,运行所述目标服务组件,并将运行所述目标服务组件得到的服务数据反馈给所述客户端的子协程。经由上述的技术方案可知,本申请应用程序的开发和运行都可以基于客户端完成,该客户端开发的应用程序中可以配置至少一个待调用的服务,由于每个服务都属于服务器中可供调用的服务组件提供的服务,因此,在开发应用程序的过程中如果需要实现某些服务组件所实现的服务功能,可以直接配置相应的待调用的服务即可,而无需在应用程序中开发出相应服务的代码,有利于降低开发应用程序的复杂度。而且,本申请在运行应用程序时,可以通过客户端创建主协程并通过主协程运行应用程序的代码,而一旦应用程序需要调用服务器的某个服务,则主协程可以创建该服务对应的子协程,本文档来自技高网...

【技术保护点】
1.一种应用程序运行方法,其特征在于,包括:/n创建主协程;/n通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;/n在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标服务的服务调用请求,所述目标服务属于所述至少一个待调用的服务;/n在所述子协程向服务器发送所述服务调用请求之后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码;/n在所述主协程检测到所述服务器针对所述目标服务返回的服务数据反馈通知时,所述主协程控制切换到所述目标服务对应的子协程,并通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据。/n

【技术特征摘要】
1.一种应用程序运行方法,其特征在于,包括:
创建主协程;
通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;
在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标服务的服务调用请求,所述目标服务属于所述至少一个待调用的服务;
在所述子协程向服务器发送所述服务调用请求之后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码;
在所述主协程检测到所述服务器针对所述目标服务返回的服务数据反馈通知时,所述主协程控制切换到所述目标服务对应的子协程,并通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据。


2.根据权利要求1所述的方法,其特征在于,所述通过运行所述子协程向服务器发送所述目标服务的服务调用请求,包括:
通过运行所述子协程从配置的连接池中选取空闲的连接组件,并基于选取的连接组件,向服务器发送所述目标服务的服务调用请求。


3.根据权利要求1所述的方法,其特征在于,在所述通过运行所述目标服务对应的子协程从所述服务器接收所述目标服务对应的服务数据之后,还包括:
在所述子协程确认完成所述服务数据的接收后,通过所述子协程切换到所述主协程运行,以通过所述主协程顺序执行所述应用程序中尚未被执行的代码。


4.根据权利要求1或2所述的方法,其特征在于,所述应用程序中还配置有待调用的至少一个注解组件,所述注解组件为配置的注解组件库中的注解组件;
所述方法还包括:
在主协程执行应用程序的代码过程中,在检测到待调用的注解组件时,则从所述组件库中调用所述注解组件,以获得所述注解组件所提供的注解。


5.根据权利要求4所述的方法,其特征在于,在运行所述应用程序之前,还包括:
在客户端展现所述服务器可供调用的服务组件;
根据用户的第一配置操作,在应用程序中配置需要调用的服务组件对应的服务;
展现客户端已加载的连接池和注解组件池;
基于用户的第二配置操作,配置所述连接池中可供所述应用程序调用的连接数量和至少一个连接;
基于用户的第三配置操作,配置注解组件池中可供所述应用程序调用的注解组件。


6.一种应用程序运行装置,其特征在于,包括:
主协程创建单元,用于创建主协程;
代码执行单元,用于通过所述主协程顺序执行应用程序的代码,所述应用程序中配置有至少一个待调用的服务,所述待调用的服务属于服务器中可供调用的服务组件提供的服务;
子协程运行单元,用于在主协程执行应用程序的代码过程中,在执行到待调用的目标服务时,通过所述主协程创建与所述目标服务对应的子协程,并通过运行所述子协程向服务器发送所述目标...

【专利技术属性】
技术研发人员:李昆仑刘建辉常晓阳王路孟伟
申请(专利权)人:郑州悉知信息科技股份有限公司
类型:发明
国别省市:河南;41

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

1