Страницы

Поиск по вопросам

вторник, 31 декабря 2019 г.

Производительность JNI: правда или миф?

#java #cpp #jni


С учебы мне говорят то, что JNI это c++. И по скорости выполнения он превосходит
Java. Но капаюсь я в нём и, как оказалось, вызов JNI это очень трудаемкая задача. И
она требует до 12 проходов (шагов). Стоит ли вообще его использовать? И есть ли конкретные
случаи когда он в Java так необходим?
    


Ответы

Ответ 1



Прямо с сайта Oracle: Примеры, когда следует использовать JNI: Стандартная библиотека JAVA не поддерживает платформенно-специфические возможности, требуемые конкретным приложением. У вас уже есть библиотека, написанная на другом языке, и вы хотите использовать ее в JAVA. Вы хотите реализовать некоторые участки кода, критичные к скорости исполнения, на языке более низкого уровня типа Ассемблера. Пример: граф обработки аудио/видео с фильтрами. Фильтр имеет интерфейс JAVA-объекта, а алгоритм конкретного фильтра реализован на C/ASM и подключается с помощью JNI.

Комментариев нет:

Отправить комментарий