Bladeren bron

Avoid spinning up unnecessary goroutines for single data jobs

Svilen Markov 4 maanden geleden
bovenliggende
commit
14db59318c
1 gewijzigde bestanden met toevoegingen van 5 en 0 verwijderingen
  1. 5 0
      internal/glance/widget-utils.go

+ 5 - 0
internal/glance/widget-utils.go

@@ -179,6 +179,11 @@ func workerPoolDo[I any, O any](job *workerPoolJob[I, O]) ([]O, []error, error)
 		return results, errs, nil
 	}
 
+	if len(job.data) == 1 {
+		output, err := job.task(job.data[0])
+		return append(results, output), append(errs, err), nil
+	}
+
 	tasksQueue := make(chan *workerPoolTask[I, O])
 	resultsQueue := make(chan *workerPoolTask[I, O])