Семафоры могут использоваться для защиты пула ресурсов .Мы используем пулы ресурсов для повторного использования вещей, которые дороги для создания - таких как соединения с базой данных.
Таким образом, начальное число относится к количеству доступных ресурсов в пуле в начале некоторого процесса.Когда вы читаете initialCount
в коде, вы должны думать о том, сколько предварительных усилий вы вкладываете в создание этого пула ресурсов.
Меня действительно смущает значение начального счета?
Initial count
= Upfront cost
Таким образом, в зависимости от профиля использованиявашего приложения, это значение может оказать существенное влияние на производительность вашего приложения.Это не просто произвольное число.
Вы должны тщательно подумать о том, что вы создаете, как дорого они создаются и сколько вам нужно сразу.Вы должны буквально уметь составлять график оптимального значения для этого параметра и, вероятно, подумать о том, чтобы сделать его настраиваемым, чтобы можно было адаптировать производительность процесса к моменту его выполнения.