При вызове JNI-функций из Java в Android-приложении с использованием JNI это гарантированное время жизни для переменных, объявленных в области файлов? Мы называем эту функцию несколько раз, может ли система Android выгружать нашу программу из памяти, не прерывая процесс приложения, чтобы сохранить память между вызовами? Является ли наша переменная продолжительность жизни гарантированной для жизни процесса?
#include <stuff>
int counter = 0;
extern "C" void com_package_Class_dostuffFromJava(JNIenv.....)
{
LOG("Counter: %d" , counter);
++counter;
}
Любая операционная система может обмениваться или использовать память страниц, но я не понимаю, почему это касается вас. "Гарантированная жизнь" переменной в области файлов в C - это жизнь процесса.