Я разрабатываю приложение для обработки изображений на Java, но недавно меня заинтересовала VALA. Причина в том, что я верю, что могу увеличить производительность приложения (меня беспокоит, в основном, взаимосвязь с библиотеками C / C ++, поскольку кажется < Пример >, что при использовании мостов C / C ++ в Java существует ограничение производительности).
Предпосылки ( что я знаю):
- VALA переводится в код C, а затем компилируется в собственный машинный код.
- AOT (Java / Mono C #) также может создавать собственные машинные коды (вместо использования виртуальных машин, но по-прежнему требует пакет времени выполнения).
- В некоторых случаях использование виртуальной машины может быть даже быстрее, чем собственный машинный код (поскольку он может быть оптимизирован с помощью JIT-компилятора).
- Потребляемые библиотеки C / C ++ могут быть созданы с использованием VALA.
Что-то крутится у меня в голове, и я не могу найти ответ:
- Может ли C / C ++ расходная библиотека Может быть произведено с использованием компилятора AOT? (Думаю, нет).
- Есть ли у созданного двоичного файла AOT проблемы с производительностью моста? (Я думаю, это так).
- Вызов библиотек C / C ++ в VALA имеет такую же производительность, как и их вызов из C? (Я думаю, это так).
Есть какие-нибудь сведения?
задан lepe 16 January 2012 в 02:38
поделиться