MCPcopy Create free account
hub / github.com/golang/appengine / lease

Function lease

taskqueue/taskqueue.go:404–431  ·  view source on GitHub ↗
(c context.Context, maxTasks int, queueName string, leaseTime int, groupByTag bool, tag []byte)

Source from the content-addressed store, hash-verified

402}
403
404func lease(c context.Context, maxTasks int, queueName string, leaseTime int, groupByTag bool, tag []byte) ([]*Task, error) {
405 if queueName == "" {
406 queueName = "default"
407 }
408 req := &pb.TaskQueueQueryAndOwnTasksRequest{
409 QueueName: []byte(queueName),
410 LeaseSeconds: proto.Float64(float64(leaseTime)),
411 MaxTasks: proto.Int64(int64(maxTasks)),
412 GroupByTag: proto.Bool(groupByTag),
413 Tag: tag,
414 }
415 res := &pb.TaskQueueQueryAndOwnTasksResponse{}
416 if err := internal.Call(c, "taskqueue", "QueryAndOwnTasks", req, res); err != nil {
417 return nil, err
418 }
419 tasks := make([]*Task, len(res.Task))
420 for i, t := range res.Task {
421 tasks[i] = &Task{
422 Payload: t.Body,
423 Name: string(t.TaskName),
424 Method: "PULL",
425 ETA: time.Unix(0, *t.EtaUsec*1e3),
426 RetryCount: *t.RetryCount,
427 Tag: string(t.Tag),
428 }
429 }
430 return tasks, nil
431}
432
433// Lease leases tasks from a queue.
434// leaseTime is in seconds.

Callers 2

LeaseFunction · 0.70
LeaseByTagFunction · 0.70

Calls 1

CallFunction · 0.92

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…