Перейти к содержимому

Иван Углянский — В нативный код из уютного мира Java: Путешествие туда и обратно

JPoint, Joker и JUG ru — Java-конференции

0:00 / 0:00

Иван Углянский — В нативный код из уютного мира Java: Путешествие туда и обратно

8 898 просмотров · 5 лет назад
JPoint, Joker и JUG ru — Java-конференции
57,6 тыс. подписчиков
8 898 просмотров · 5 лет назад
Подробнее о Java-конференциях: — весной — JPoint: https://jrg.su/gTrwHx — осенью — Joker: https://jrg.su/h7yvG4 — — . . . Все мы любим Java и другие управляемые языки, но иногда их бывает просто недостаточно. Нужен доступ к библиотеке машинного обучения, написанной исключительно на С? Или всего-то хочется позвать небольшой метод из OS API? А может, для одного из модулей вы хотите получить большую производительность, чем вы когда-либо сможете выжать из Java? Тогда вам прямой путь в нативный код! Вроде все просто — пишем нативный метод, загружаем библиотеку, вызываем, и дело в шляпе! Но вот беда: JVM начала крашиться в случайных местах, производительность упала ниже прежнего, а ваш репозиторий заполонили бесконечные сишные файлы, испещренные буквами J-N-I. Что же пошло не так? В докладе разберемся со всем по порядку: что необычного в интеропе между Java и нативным кодом и какая у него история; как работать с нативным кодом прямо сейчас, чтобы избежать сегфолтов, просадки производительности, внезапных OOM; наконец, что же нас ждет в будущем в контексте таких проектов, как Panama и Sulong, и будет ли после них вообще смысл говорить про какой-то интероп.