Здравствуйте, Pauel, Вы писали:
P>·>Виртуальные треды же — это обычные треды, но с кооперативной многозадачностью. Никаких изменений в ЯП нет, всё на уровне рантайма, просто теперь можно выполнять обычный код с классическими локами и тому подобными обычными механизмами синхронизации между тредами, но без накладных расходов которые связаны с реальными ОС-тредами. P>Каким образом джава узнает, что вон тот метод у нас работает долго и при его вызове надо бы перешедулить?
Тут уже отвечали.
Помимо обычных блокировок в виде локов, они ещё переработали синхронное IO, например. Т.е. тупой линейный код как в go socket.readAllBytes(); ... socket.write(response);, тред для каждого клиента и внутре случается магия всяких epoll, виртуальный тред на блокирующем io так же перешедуливается.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай