Browse Source

accelerate one task execution

Darien Raymond 7 years ago
parent
commit
eafe580be4
1 changed files with 5 additions and 0 deletions
  1. 5 0
      common/task/task.go

+ 5 - 0
common/task/task.go

@@ -20,6 +20,11 @@ func (c *executionContext) executeTask() error {
 		return nil
 		return nil
 	}
 	}
 
 
+	// Reuse current goroutine if we only have one task to run.
+	if len(c.tasks) == 1 && c.ctx == nil {
+		return c.tasks[0]()
+	}
+
 	ctx := context.Background()
 	ctx := context.Background()
 
 
 	if c.ctx != nil {
 	if c.ctx != nil {