// Copyright (C) The Arvados Authors. All rights reserved.
//
// SPDX-License-Identifier: AGPL-3.0

package controller

func semaphore(max int) (acquire, release func()) {
	if max > 0 {
		ch := make(chan bool, max)
		return func() { ch <- true }, func() { <-ch }
	}
	return func() {}, func() {}
}