[发明专利]一种优化方法、计算机设备和存储介质有效
| 申请号: | 201810588784.2 | 申请日: | 2018-06-08 |
| 公开(公告)号: | CN108776623B | 公开(公告)日: | 2020-09-08 |
| 发明(设计)人: | 杨亮;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54 |
| 代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 刘杰 |
| 地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 优化 方法 计算机 设备 存储 介质 | ||
本发明提供了一种优化方法,包括:通过创建RPC通信实例;设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行;设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输;根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。可以减少为RPC通信实例创建的线程数量,从而提高程序的稳定性。
技术领域
本发明属于计算机技术领域,尤其涉及一种优化方法、计算机设备和存储介质。
背景技术
RPC(Remote Procedure Call,远程方法调用)是两个进程间进行通信的一种方法,在一些应用中,每创建一个RPC通信实例,就会在系统中创建多个线程来进行RPC任务队列的执行和数据的传输,。
由于每个RPC通信实例都需要创建多个线程,而线程又是操作系统中一个重要的资源,随着进程中创建的RPC通信实例越来越多,线程数量也随之增加,当线程的数量超过系统资源的承载能力时,将导致线程的创建失败,从而引起整个进程的崩溃。
发明内容
本申请实施例通过提供一种优化方法、计算机设备和存储介质,可以减少为RPC通信实例创建的线程数量,从而提高程序的稳定性,解决了现有技术中,由于线程的数量太多而导致整个进程崩溃的问题。
第一方面,本申请通过本申请的一实施例,提供如下技术方案:
一种优化方法,包括:
创建RPC通信实例;
设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行;
设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输;
根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;
如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。
可选的,所述设置第一变量包括:
在RPC模块的RpcBase类中增加一个bool类型的所述第一变量,所述第一变量的初始值为false,表示需要创建所述RPC主线程;
若不需要创建所述RPC主线程,通过调用所述RPC模块的RpcSetProperty方法将所述第一变量的值改为true,表示不需要创建所述RPC主线程。
可选的,所述设置第二变量包括:
在IPC模块的BaseInterProcessCommunicate类中增加一个bool类型的所述第二变量,所述第二变量的初始值为false,表示需要创建所述传输主线程;
若不需要创建所述传输主线程,通过调用所述IPC模块的setOption方法将所述第二变量的值改为true,表示不需要创建所述传输主线程。
可选的,所述通过调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810588784.2/2.html,转载请声明来源钻瓜专利网。





