tgoop.com/misha_writes_code/40
Create:
Last Update:
Last Update:
Там новая джава 21 дропнулась. Не особо шарю за джаву, но пробежался выписал себе приколы, за которые глаз зацепился.
Во-первых, узнал, что предложение по улучшению JDK называется JEP. Поэтому щас будут топ-3 жепы, которые мне сегодня понравились.
1. Vitrual Threads - в жепе 444 виртуальные потоки перешли из режима превью в стабильный режим. Теперь ими можно пользоваться и не волноваться, что API поменяется.
Виртуальные потоки менеджить будет JVM, а не ОС, так что работать будут быстро для небольших задач ибо не надо дергать тяжелые системные вызовы под каждую легкую задачу.
По удобству как будто бы лучше не стало, все так же надо мутить фьючи:
var future1 = executor.submit(() -> fetchURL(url1));
var future2 = executor.submit(() -> fetchURL(url2));
response.send(future1.get() + future2.get());
Все-таки удобнее, чем в го, "легкие треды" никто так и не сделал.
Единственное что, насколько я понял это предложение:
If a virtual thread's stack reaches half the region size, which could be as small as 512KB, then a StackOverflowError might be thrown.
стек у такого потока ограничен 256кб. Ну мб этого и достаточно. Имплементацию можно вот тут посмотреть.
2. Unnamed Classes and Instance Main Methods -
Посмотрите на своего мужчину:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
и на меня:
void main() {
System.out.println("Hello, World!");
}
да, я сам по себе (ну на самом деле не совсем, там класс все равно сгенерируется).
Ну осталось еще от jvm отказаться и исправить 6 опечаток в слове spring, чтобы получился boost и заживем.
3. Vector api - так и не довели до превью, хотя и не удалили (казалось, что я слышал, что собирались забить на него).
Все хотят сделать специальное api, чтобы можно было гарантированно компилировать код в векторные инструкции поддерживаемых архитектур там, где этого хочет программист. Но пока все никак не фартанет(
BY Миша пишет код

Share with your friend now:
tgoop.com/misha_writes_code/40