當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Task.Copy方法代碼示例

本文整理匯總了Golang中github.com/docker/swarmkit/api.Task.Copy方法的典型用法代碼示例。如果您正苦於以下問題:Golang Task.Copy方法的具體用法?Golang Task.Copy怎麽用?Golang Task.Copy使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/docker/swarmkit/api.Task的用法示例。


在下文中一共展示了Task.Copy方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: tasksEqual

// tasksEqual returns true if the tasks are functionaly equal, ignoring status,
// version and other superfluous fields.
//
// This used to decide whether or not to propagate a task update to a controller.
func tasksEqual(a, b *api.Task) bool {
	a, b = a.Copy(), b.Copy()

	a.Status, b.Status = api.TaskStatus{}, api.TaskStatus{}
	a.Meta, b.Meta = api.Meta{}, api.Meta{}

	return reflect.DeepEqual(a, b)
}
開發者ID:ygf11,項目名稱:docker,代碼行數:12,代碼來源:task.go

示例2: startTask

func (w *worker) startTask(ctx context.Context, tx *bolt.Tx, task *api.Task) error {
	w.taskevents.Publish(task.Copy())
	_, err := w.taskManager(ctx, tx, task) // side-effect taskManager creation.

	if err != nil {
		log.G(ctx).WithError(err).Error("failed to start taskManager")
	}

	// TODO(stevvooe): Add start method for taskmanager
	return nil
}
開發者ID:xlgao-zju,項目名稱:docker,代碼行數:11,代碼來源:worker.go

示例3: newTaskManager

func newTaskManager(ctx context.Context, task *api.Task, ctlr exec.Controller, reporter StatusReporter) *taskManager {
	t := &taskManager{
		task:     task.Copy(),
		ctlr:     ctlr,
		reporter: reporter,
		updateq:  make(chan *api.Task),
		shutdown: make(chan struct{}),
		closed:   make(chan struct{}),
	}
	go t.run(ctx)
	return t
}
開發者ID:SUSE,項目名稱:docker.mirror,代碼行數:12,代碼來源:task.go

示例4: PutTask

// PutTask places the task into the database.
func PutTask(tx *bolt.Tx, task *api.Task) error {
	return withCreateTaskBucketIfNotExists(tx, task.ID, func(bkt *bolt.Bucket) error {
		task = task.Copy()
		task.Status = api.TaskStatus{} // blank out the status.

		p, err := proto.Marshal(task)
		if err != nil {
			return err
		}
		return bkt.Put(bucketKeyData, p)
	})
}
開發者ID:CheggEng,項目名稱:docker,代碼行數:13,代碼來源:storage.go


注:本文中的github.com/docker/swarmkit/api.Task.Copy方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。