forked from mirrors/homebox
20 lines
449 B
Go
20 lines
449 B
Go
package server
|
|
|
|
type Worker interface {
|
|
Add(func())
|
|
}
|
|
|
|
// SimpleWorker is a simple background worker that implements
|
|
// the Worker interface and runs all tasks in a go routine without
|
|
// a pool or que or limits. It's useful for simple or small applications
|
|
// with minimal/short background tasks
|
|
type SimpleWorker struct {
|
|
}
|
|
|
|
func NewSimpleWorker() *SimpleWorker {
|
|
return &SimpleWorker{}
|
|
}
|
|
|
|
func (sw *SimpleWorker) Add(task func()) {
|
|
go task()
|
|
}
|