Я работаю над JNI с языком C. Здесь я создал массив объектов размером 4000. В соответствии с моими требованиями размер массива должен динамически расти. Как я могу распределить память динамически? Я пробовал использовать malloc
. Но я не могу этого добиться.Как динамически выделять память для массива объектов JNI
Вот что я пробовал:
OriginalArray = (*env)->NewObjectArray(env, 4000, tradeObject, NULL);
«Я не могу этого достичь» не является описанием проблемы. – EJP
Я пытаюсь выделить память в первый раз на 20, а затем я пытаюсь перераспределить ее до 40. Но это не работает для меня. Я попробовал следующее: 'jobjectArray tradeOriginalArray *; sizeofhearray = 20; tradeOriginalArray = malloc (sizeofhearray * sizeof (jobjectArray)); sizeofhearray = 40; tradeOriginalArray = realloc (tradeOriginalArray, sizeof (jobjectArray) * sizeofhearray); ' –
Почему, по-вашему, вам нужно использовать JNI для этого? Это было бы утомительной проблемой для того, чтобы кто-то, знакомый с JNI, использовал что-то вроде объекта Java HashSet. Выполнение этого с JNI делает дополнительные усилия, чтобы сделать что-то легкое и ** сделать ** это трудно. –