多进程管理方法、存储介质、电子设备及系统技术方案

技术编号:19857109 阅读:29 留言:0更新日期:2018-12-22 11:37
本发明专利技术公开了一种多进程管理方法、存储介质、电子设备及系统,涉及控制技术领域,该方法包括调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;辅助进程调用函数ReadFile从命名管道中读取任务数据;辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出。本发明专利技术中主进程通过命名管道对辅助进程的任务执行状态进行掌控,保证多辅助进程运行情况下应用程序的正常运行。

【技术实现步骤摘要】
多进程管理方法、存储介质、电子设备及系统
本专利技术涉及控制
,具体涉及一种多进程管理方法、存储介质、电子设备及系统。
技术介绍
当前,对于一些服务类型的应用程序,特别是对于具有独立任务的应用程序,通常会采用多进程的架构设计,采用多进程的设计,可以使得一个进程的不稳定不会导致整个程序出错,即对于一个服务型的应用程序,当一个进程因为奔溃退出时,其它进程还可以继续进行服务,多进程具有更强的健壮性,以此来保证应用程序的正常运行。在实际的运行过程中,例如可以创建一个主进程用于接收任务,然后通过主进程创建多个辅助进程(子进程)来完成不同任务,即对于每一个所接收的任务,都由一个辅助进程来完成,即不同的任务创建不同的辅助进程来完成,例如搜索文件任务、写文件任务、图片处理任务等。实际运行中并不能保障每个辅助进程都能稳定运行,由于同时运行的辅助进程过多,有的辅助进程的任务可能执行到一半时产生了数据错误,导致应用程序奔溃,有的辅助进程执行的任务可能会产生死锁导致应用程序卡死,现有技术中主进程对于辅助进程并没有很好的管理方案。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种多进程管本文档来自技高网...

【技术保护点】
1.一种多进程管理方法,其特征在于,包括以下步骤:调用Windows系统API函数中的CreateNamedPipe函数创建多个用于主进程和辅助进程间通信的命名管道,且每个命名管道对应一个辅助进程;主进程调用函数WriteFile在命名管道中写入任务数据,并将写入的任务数据发至对应的辅助进程;辅助进程调用函数ReadFile从命名管道中读取任务数据;辅助进程基于任务数据进行相应任务的执行,且待任务执行完毕后,辅助进程调用函数AtExit完成自身的退出,并通过命名管道发送用于表示任务已执行完毕且辅助进程已退出的数据至主进程。

【技术特征摘要】
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系统中的注册,当辅助进程执行任务出现异常时,异常处理函数通过发送日志告知主进程,主进程...

【专利技术属性】
技术研发人员:周志刚
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

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

1