Здравствуйте, m2user, Вы писали:
m> A>·>Виртуальные треды запускаются на пуле из ОС-тредов и на блокирующих операциях перешедулятся, стеки подменяются.
m> A>Получается автоматическая асинхроность без всякого переписывания кода. Умно, ждем в .NET такое.
m> Ну как не переписывать: нужно как минимум создать экземпляр VirtualThread и запихнуть туда лямбду с кодом
Лямбды тут непричём. Вообще.
wiring код немного поменяются. И собственно всё. Вся бизнес-логика остаётся как есть, и можно масштабировать старинный код, который все боятся трогать.
m>(а если ещё вспомнить, что лямбды в Java не умеют захватывать неконстантные переменные в отличие от C#)
Шо?! Они переменные со стека не умеют захватывать только. Как собственно и в шарпе.
m> Из статьи на которую ссылается TC, преимущество перед async/await неочевидно (там сравнение с async/await в Котлине)
m> (https://blog.rockthejvm.com/ultimate-guide-to-java-virtual-threads/)
С тем, что код тупой, обычный, синхронный, понятный любому индусу, без всякого мусора async/await, возможно написанный ещё до создания самого c#. Гугли "function coloring".