для sync.Mutex? Например для задач, в которых, если ресурс уже используется, то можно перейти к следующему, попробовать его захватить или ещё что-то сделать.
Или тут нет единого механизма, а кто как придумает кому-как удобно?
в принципе можно try lock на каналах сделать
на атомиках костылить
вообще есть https://godoc.org/golang.org/x/sync/semaphore
Обсуждают сегодня