本文整理匯總了Golang中github.com/RichardKnop/machinery/v1/signatures.TaskSignature.UUID方法的典型用法代碼示例。如果您正苦於以下問題:Golang TaskSignature.UUID方法的具體用法?Golang TaskSignature.UUID怎麽用?Golang TaskSignature.UUID使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/RichardKnop/machinery/v1/signatures.TaskSignature
的用法示例。
在下文中一共展示了TaskSignature.UUID方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: NewChord
// NewChord creates Chord instance
func NewChord(group *Group, callback *signatures.TaskSignature) *Chord {
// Generate a UUID for the chord callback
callback.UUID = fmt.Sprintf("chord_%v", uuid.New())
// Add a chord callback to all tasks
for _, task := range group.Tasks {
task.ChordCallback = callback
}
return &Chord{Group: group, Callback: callback}
}
示例2: SendTask
// SendTask publishes a task to the default queue
func (server *Server) SendTask(signature *signatures.TaskSignature) (*backends.AsyncResult, error) {
// Auto generate a UUID if not set already
if signature.UUID == "" {
signature.UUID = uuid.New()
}
if err := server.broker.Publish(signature); err != nil {
return nil, fmt.Errorf("Publish Message: %v", err)
}
// Update task state to PENDING
if err := server.backend.SetStatePending(signature); err != nil {
return nil, fmt.Errorf("Set State Pending: %v", err)
}
return backends.NewAsyncResult(signature, server.backend), nil
}
示例3: SendTask
// SendTask publishes a task to the default queue
func (server *Server) SendTask(signature *signatures.TaskSignature) (*backends.AsyncResult, error) {
// Make sure result backend is defined
if server.backend == nil {
return nil, errors.New("Result backend required")
}
// Auto generate a UUID if not set already
if signature.UUID == "" {
signature.UUID = fmt.Sprintf("task_%v", uuid.New())
}
// Set initial task state to PENDING
if err := server.backend.SetStatePending(signature); err != nil {
return nil, fmt.Errorf("Set State Pending: %v", err)
}
if err := server.broker.Publish(signature); err != nil {
return nil, fmt.Errorf("Publish Message: %v", err)
}
return backends.NewAsyncResult(signature, server.backend), nil
}