Здравствуйте, Pzz, Вы писали:
Pzz>В яву завезли goroutines?
Нет, это невытесняющая многозадачность, реализованная на уровне JVM. Когда код вызывает любую блокирующую операцию (wait/sleep/synchronized/blocking io), управление передается в джавовый планировщик, который сохранит текущий стек и запустит на выполнение какой-нибудь другой кусок кода с сохраненным стеком.