Shadow
Shadow copied to clipboard
插件多进程问题
因为是在InstallPlugin方法里通过PPS的进程确定了该插件的进程,那如果我想插件里存在多个进程怎么实现呢?比如插件中的普通业务代码是主进程,但是有一个后台服务是另外一个进程。
需要多个进程分成多个插件不就好了?如果你觉得不可以,为什么呢?
如果你对进程理解正确,那唯一的理由就是想省点事,不想拆分插件。那shadow不支持同一个插件有多个进程的唯一理由也只是这种支持没有任何难点,只是多了一些自动化逻辑而已,所以没有实现的动力。也因为原本要支持的业务需求并不需要经常变化插件所在的进程。
目前来看,插件本身是不支持多进程的,只能通过宿主在子进程中启动对应插件,因为插件中service并不是真正的service,只是通过PluginServiceManager这个管理类调用了PluginService的生命周期,模拟了service的运行,因此插件中service组件的process属性是不起作用的