<p>I am working on building an abstraction over a library to enqueue jobs and came up with this initial module <a href="https://play.golang.org/p/X7kc2coDAG" rel="nofollow">https://play.golang.org/p/X7kc2coDAG</a> but I feel like this isn't really idiomatic. What can be done better here?</p>
<p>EDIT: pasting the code here</p>
<pre><code>package main
import (
"github.com/gocraft/work"
"log"
)
// Params is used to pass the parameters for a given job to the worker.
type Params map[string]interface{}
// Dispatcher wraps all methods for handling the dispatch of a job.
//
// Dispatch sends a job to be processed.
type Dispatcher interface {
Dispatch(name string, params Params) error
}
// Job holds the enqueuer used to dispatch jobs to the worker.
type Job struct {
enqueuer *work.Enqueuer
}
func (j *Job) Dispatch(name string, params Params) error {
log.Println("Enquing job: ", name)
_, err := j.enqueuer.Enqueue(name, params)
if err != nil {
return err
}
return nil
}
</code></pre>
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
0 回复
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码`
- 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传