Skip to content

module 可否增加一个“启动后” 的事件通知? #190

@cupen

Description

@cupen

我有个游戏项目用了 leaf ,另加了分布式通信层和服务发现机制,需要在进程里的服务(module)全部就绪后注册到外部服务。但因为在 OnInit 阶段服务还没有全部启动完毕,所以目前我是这样做的:

go func() {
	leaf.Run(
		xxx.Module,
		yyy.Module,
		xxx.Module,
	)
}()
// 等待就绪.... 
time.Sleep(100*time.Milisecond)
// register xxx.Module into blahblah...  

这样可行,但比较看脸(实际启动时间会变的,比如又加了新功能),不太好用。
故而有点新想法,比如 module 可否有个启动后的 OnXXX 调用?
延伸一下,甚至可以细分为几个阶段:启动前、启动后、停止前、停止后。

以上个人愚见,欢迎讨论。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions