利索能及
我要发布
收藏
专利号: 2018107469066
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2025-05-11
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种多进程管理方法,其特征在于,包括以下步骤:

调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;

主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;

辅助进程调用函数ReadFile从命名管道中读取任务数据;

辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出,并通过命名管道发送用于表示任务已执行完毕且辅助进程已退出的数据至主进程。

2.如权利要求1所述的一种多进程管理方法,其特征在于:

每个辅助进程对应执行一个任务;

所述命名管道创建时还需传入名称参数;

传入命名管道中的名称参数为该命名管道对应辅助进程所待执行任务的名称。

3.如权利要求1所述的一种多进程管理方法,其特征在于,当命名管道创建完成后,对于主进程:调用函数ConnectNamedPipe等待该命名管道对应的辅助进程连接;

待辅助进程通过命名管道完成与主进程的连接,接收辅助进程通过命名管道发送用于表示连接成功的数据至主进程;

调用函数ReadFile对辅助进程发送的数据进行读取;

调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程。

4.如权利要求3所述的一种多进程管理方法,其特征在于,当命名管道创建完成后,对于辅助进程:调用函数CreateFile连接命名管道,完成与主进程间的连接;

发送用于表示连接成功的数据至主进程,然后调用函数WaitNamedPipe等待主进程的相应;

调用函数ReadFile从命名管道中读取主进程写入的任务数据。

5.如权利要求1所述的一种多进程管理方法,其特征在于:所述主进程中预设有任务完成时间,当主进程在命名管道中写入任务数据,并将写入的任务数据发至辅助进程后,若在预设有的任务完成时间内,主进程未收到辅助进程发送的用于表示任务已执行完毕且辅助进程已退出的数据,则主进程调用函数TerminateProcess终止该辅助进程的运行。

6.如权利要求1所述的一种多进程管理方法,其特征在于,该方法还包括:编写用于监控辅助进程的异常处理函数,并完成异常处理函数在Windows系统中的注册,当辅助进程执行任务出现异常时,异常处理函数通过发送日志告知主进程,主进程调用函数TerminateProcess终止该辅助进程的运行。

7.如权利要求5或6所述的一种多进程管理方法,其特征在于:当辅助进程被终止运行后,主进程重新创建辅助进程来重新执行被终止辅助进程之前执行的任务。

8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;

主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;

辅助进程调用函数ReadFile从命名管道中读取任务数据;

辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出,并通过命名管道发送用于表示任务已执行完毕且辅助进程已退出的数据至主进程。

9.一种电子设备,其特征在于,其包括:

创建单元,其用于调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;

写入单元,其用于驱使主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;

读取单元,其用于驱使辅助进程调用函数ReadFile从命名管道中读取任务数据;

执行及通知单元,其用于驱使辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出,并通过命名管道发送用于表示任务已执行完毕且辅助进程已退出的数据至主进程。

10.一种多进程管理系统,其特征在于,包括:

创建模块,其用于调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;

写入模块,其用于驱使主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;

读取模块,其用于驱使辅助进程调用函数ReadFile从命名管道中读取任务数据;

执行及通知模块,其用于驱使辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出,并通过命名管道发送用于表示任务已执行完毕且辅助进程已退出的数据至主进程。