Премиум каналы

Java Interview Tasks

Канал "Java Interview Tasks" предлагает реальные вопросы и задачи, которые могут встретиться на собеседованиях для Java-разработчиков. Здесь вы найдете полезные материалы, связанные с Java, включая вопросы о ядре Java, коллекциях, Java 8, Servlets, JSP, JSTL, SQL, JDBC, UML, XML, HTML, CSS и других темах. Канал также предоставляет информацию о Telegram-боте, связанном с Java-разработкой, и активность статистики канала. Присоединяйтесь к каналу "Java Interview Tasks" и подготовьтесь к собеседованиям с уверенностью!

Последние публикации с канала

Какие есть недостатки в этом коде?

25.04.2024 / 12:04

Где будет исполнен метод doInternal?

Anonymous Quiz

23% - В новом треде

41% - В том же треде что и forceThread

11% - Код упадет, так как метод run нельзя вызывать у потока

11% - Код не скомпилирется

14% - Узнать ответ

16.04.2024 / 12:04

Где будет исполнен метод doInternal?

16.04.2024 / 12:04

Результат получился ожидаемый. Виртуальные потоки создаются быстрее обычных как и ожидается.

10.04.2024 / 09:04

Какие потоки будут создаваться быстрее?

Anonymous Quiz

55% - virtual threads быстрее

19% - большой разницы не будет

8% - threads быстрее

18% - узнать ответ

08.04.2024 / 09:04

Какие потоки будут создаваться быстрее?

08.04.2024 / 09:04

Java Interview Tasks pinned Deleted message

02.04.2024 / 04:04

Progress.java

2.2 KB

Полный код теста

01.04.2024 / 14:04

Результат с volatile

01.04.2024 / 14:04

Результат без volatile

01.04.2024 / 14:04

Запускал эти тесты у себя локально, на jdk11:
java.specification.name Java Platform API Specification
java.specification.vendor Oracle Corporation
java.specification.version 11
java.vendor Amazon.com Inc.
java.version 11.0.19
java.vm.name OpenJDK 64-Bit Server VM
java.vm.vendor Amazon.com Inc.
java.vm.version 11.0.19+7-LTS
os.arch amd64
os.name Windows 11
os.version 10.0

01.04.2024 / 14:04
01.04.2024 / 14:04
01.04.2024 / 14:04

Java Interview Tasks:

какие тут проблемы могут быть? (метод get могут вызывать разные потоки одновременно)

Что бы понять нужен ли volatile над полем, проведем несколько тестов:
Будем использовать jcstress - https://openjdk.org/projects/code-tools/jcstress/
(https://youtu.be/uZfK-9ixxec?si=oE1Lqvp8_wxoLOuY)
Код двух экспериментов ниже:

01.04.2024 / 14:04

проблемы в https://t.me/java_interview_tasks/328:

1) метод load() будет вызываться несколько раз , если новые потоки будут приходить до того как doLoad загрузит данные => одни и те же данные будут грузится паралельно, что может вызвать проблемы, например оом, плюс к этому на каждый вызову будет создаваться новый тред
2) возможно подразумевается что эксепшен из метода load перехватится в методе get, но этого не будет, так как он был выброшен в другом треде

Вопрос к экспертам по jmm: надо ли поле lastUpdate делать volatile ?

Telegram
Java Interview Tasks

какие тут проблемы могут быть? (метод get могут вызывать разные потоки одновременно)

28.03.2024 / 10:03

какие тут проблемы могут быть? (метод get могут вызывать разные потоки одновременно)

22.03.2024 / 13:03

Что такое java lts релиз?

Anonymous Quiz

60% - знаю

25% - не знаю

7% - не уверен что знаю:)

8% - узнать резхультаты

19.03.2024 / 14:03

Вышла Java 22 - https://habr.com/ru/news/801467/

Хабр
Вышла Java 22

Вышла общедоступная версия Java 22 . В этот релиз попало около 2300 закрытых задач и 12 JEP'ов . Release Notes можно посмотреть здесь . Полный список изменений API – здесь . Java 22 не является...

19.03.2024 / 14:03
19.03.2024 / 07:03

Результаты на моем ноуте:
# JMH version: 1.33
# VM version: JDK 21.0.1, OpenJDK 64-Bit Server VM, 21.0.1+12-29
# 16 cores

Benchmark Mode Cnt Score Error Units
Test.testCachedExecutorTask200ms avgt 2 214770,671 us/op
Test.testFixedExecutorTask200ms avgt 2 4260257,133 us/op
Test.testVirtualExecutorTask200ms avgt 2 212590,221 us/op

Интерпретация:
Разницы между Cached и Virtual нет. Это было ожидаемо. На такой нагрузке работа с потоками занимает относительно малое время по сравнению с бизнес логикой (200 ms в тестах).
Разница между Fixed может быть объяснена тем что плохо подобрано количество потоков в пуле.

27.02.2024 / 11:02
Отзывы: - 0
Поделитесь вашим мнением! Оставьте отзыв:

Похожие

Избранное