goroutine max number
-
[ Golang ] Go 루틴 최대갯수를 제한하기개발/golang 2021. 4. 2. 00:11
DB 배치 작업을 하거나 외부 API 를 사용할때 커넥션 갯수가 너무 많아지는것이 부담스러울때 고루틴을 다음과 같이 제한 가능하다. package example_limit_gorutine import ( "fmt" "log" "sync" "time" ) func SelectTable(offset int) { time.Sleep(300 * time.Millisecond) log.Println(fmt.Sprintf("select * from table limit %d,10", offset)) } func Run(concurrentCount int, totalCount int) { concurrentGoroutines := make(chan struct{}, concurrentCount) var wg sync..