1.一种优化方法,其特征在于,所述方法包括:创建RPC通信实例;
设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行,其中,通过在RPC模块的RpcBase类中增加一个bool类型的所述第一变量,所述第一变量的初始值为false,表示需要创建所述RPC主线程;
若不需要创建所述RPC主线程,通过调用所述RPC模块的RpcSetProperty方法将所述第一变量的值改为true,表示不需要创建所述RPC主线程;
设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输,其中,通过在IPC模块的BaseInterProcessCommunicate类中增加一个bool类型的所述第二变量,所述第二变量的初始值为false,表示需要创建所述传输主线程;若不需要创建所述传输主线程,通过调用所述IPC模块的setOption方法将所述第二变量的值改为true,表示不需要创建所述传输主线程;
根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;
通过初始化RPC模块的RpcGlobal类来创建RPC全局线程;
如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过所述RPC全局线程调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:通过RpcAddHandleIntoGlobal方法将所述RPC通信实例添加到所述全局线程中;
将添加到所述全局线程的所述RPC通信实例进行线程锁定。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:通过RpcRemoveHandleFromGlobal方法将指定RPC通信实例从所述全局线程中删除,所述指定RPC通信实例为指定的不需要通过所述全局线程处理RPC任务队列的执行和数据的传输的RPC通信实例;
将所述指定RPC通信实例进行线程解锁。
4.如权利要求1‑3任一项所述的方法,其特征在于,所述通过所述RPC全局线程调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输包括:通过所述RPC全局线程调用所述RpcPollService函数来调用所述RPC模块的RpcBase类中的poll方法,并在所述poll方法中,调用ProcAddTask方法处理所述RPC通信实例的RPC任务队列的执行,调用ioRun方法处理所述RPC通信实例的数据的传输。
5.一种优化装置,其特征在于,所述装置包括:第一创建单元,用于创建RPC通信实例;
第一设置单元,用于设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行,其中,通过在RPC模块的RpcBase类中增加一个bool类型的所述第一变量,所述第一变量的初始值为false,表示需要创建所述RPC主线程;若不需要创建所述RPC主线程,通过调用所述RPC模块的RpcSetProperty方法将所述第一变量的值改为true,表示不需要创建所述RPC主线程;
第二设置单元,用于设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输,其中,通过在IPC模块的BaseInterProcessCommunicate类中增加一个bool类型的所述第二变量,所述第二变量的初始值为false,表示需要创建所述传输主线程;若不需要创建所述传输主线程,通过调用所述IPC模块的setOption方法将所述第二变量的值改为true,表示不需要创建所述传输主线程;
确定单元,用于根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;
第二创建单元,用于通过初始化RPC模块的RpcGlobal类来创建RPC全局线程;
处理单元,用于如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过所述RPC全局线程调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。
6.如权利要求5所述的装置,其特征在于,所述装置还包括:添加单元,用于通过RpcAddHandleIntoGlobal方法将所述RPC通信实例添加到所述全局线程中;
锁定单元,用于将添加到所述全局线程的所述RPC通信实例进行线程锁定。
7.如权利要求5所述的装置,其特征在于,所述装置还包括:删除单元,用于通过RpcRemoveHandleFromGlobal方法将指定RPC通信实例从所述全局线程中删除,所述指定RPC通信实例为指定的不需要通过所述全局线程处理RPC任务队列的执行和数据的传输的RPC通信实例;
将所述指定RPC通信实例进行线程解锁。
8.如权利要求5‑7任一项所述的装置,其特征在于,所述处理单元具体用于:通过所述RPC全局线程调用所述RpcPollService函数来调用所述RPC模块的RpcBase类中的poll方法,并在所述poll方法中,调用ProcAddTask方法处理所述RPC通信实例的RPC任务队列的执行,调用ioRun方法处理所述RPC通信实例的数据的传输。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:创建RPC通信实例;
设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行,其中,通过在RPC模块的RpcBase类中增加一个bool类型的所述第一变量,所述第一变量的初始值为false,表示需要创建所述RPC主线程;
若不需要创建所述RPC主线程,通过调用所述RPC模块的RpcSetProperty方法将所述第一变量的值改为true,表示不需要创建所述RPC主线程;
设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输,其中,通过在IPC模块的BaseInterProcessCommunicate类中增加一个bool类型的所述第二变量,所述第二变量的初始值为false,表示需要创建所述传输主线程;若不需要创建所述传输主线程,通过调用所述IPC模块的setOption方法将所述第二变量的值改为true,表示不需要创建所述传输主线程;
根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;
通过初始化RPC模块的RpcGlobal类来创建RPC全局线程;
如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过所述RPC全局线程调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。
10.一种计算机设备,包括处理器、存储器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:创建RPC通信实例;
设置第一变量,所述第一变量用于指示是否创建所述RPC通信实例的RPC主线程,所述RPC主线程用于处理RPC任务队列的执行,其中,通过在RPC模块的RpcBase类中增加一个bool类型的所述第一变量,所述第一变量的初始值为false,表示需要创建所述RPC主线程;
若不需要创建所述RPC主线程,通过调用所述RPC模块的RpcSetProperty方法将所述第一变量的值改为true,表示不需要创建所述RPC主线程;
设置第二变量,所述第二变量用于指示是否创建所述RPC通信实例的传输主线程,所述传输主线程用于处理数据的传输,其中,通过在IPC模块的BaseInterProcessCommunicate类中增加一个bool类型的所述第二变量,所述第二变量的初始值为false,表示需要创建所述传输主线程;若不需要创建所述传输主线程,通过调用所述IPC模块的setOption方法将所述第二变量的值改为true,表示不需要创建所述传输主线程;
根据所述第一变量和所述第二变量,确定是否创建所述RPC通信实例的所述RPC主线程和所述传输主线程;
通过初始化RPC模块的RpcGlobal类来创建RPC全局线程;
如果确定不创建所述RPC通信实例的所述RPC主线程和所述传输主线程,则通过所述RPC全局线程调用RpcPollService函数处理所述RPC通信实例的RPC任务队列的执行和数据的传输。