Я имею в виду InputStream (Java SE) и его реализации.
Как осуществляется блокировка? Я немного обеспокоен тем, что они используют механизм «занятого ожидания», так как это приведет к большим накладным расходам. Я верю, что они делают это по-другому, но я просто прошу быть уверенным.
Нет, они не используют занятые ожидания. Это зависит от реализации (которая будет зависеть от типа входного потока, который вы используете), но обычно он использует блокирующий API на уровне ОС, поэтому эффективность будет зависеть от ОС.