在单独的go例程上运行mgr.Run()函数-faktory/contrybsys

在单独的go例程上运行mgr.Run()函数-faktory/contrybsys,go,background-process,Go,Background Process,First timer与Golang一起使用,每次用户到达端点时都需要触发作业 注册作业后,要使作业运行,需要调用mgr.run(),这是一个不会返回的函数 mgr := worker.NewManager() mgr.Concurrency = 1 toRegister := map[string]bool{} mgr.Register(jobName, jobs.NewJob(apiCtx, jobFunc).PerformFunc()) go mg

First timer与Golang一起使用,每次用户到达端点时都需要触发作业

注册作业后,要使作业运行,需要调用
mgr.run()
,这是一个不会返回的函数

    mgr := worker.NewManager()
    mgr.Concurrency = 1
    toRegister := map[string]bool{}
    mgr.Register(jobName, jobs.NewJob(apiCtx, jobFunc).PerformFunc())

    go mgr.Run()
目前,我正在添加一个
go
,使其在一个单独的goroutine中执行,并且运行良好


问题是:这样做安全吗?我担心它可能会启动不同的进程,这些进程将永远不会返回,因此永远不会结束,并可能在某个时候使服务器崩溃。

请检查此函数,该函数不应按请求调用。我认为在初始化http服务器之前,您必须调用
go mgr.Run()
,谢谢,使用这种方法会更有意义勾选这个函数并不意味着每个请求都要调用我认为在初始化http服务器之前必须调用
go mgr.Run()
。谢谢,使用这种方法会更有意义