Перейти к содержанию
Fire Monkey от А до Я

soippv

Пользователи
  • Постов

    1
  • Зарегистрирован

  • Посещение

Активность репутации

  1. Like
    soippv получил реакцию от invoclass в Баг в StringToJString - память не освобождается   
    Здравствуйте!
    Пишу на Delphi в Rad Studio 10 Seattle.
    Вы будете в шоке, но я нашел очень серьезный баг при работе нативных стандартных функций для Android.
    Вот простой пример:
    // Подключите дополнительно: Androidapi.Helpers function Test:boolean; var ii:integer; begin Result:=false; try ii:=0; while (ii<100000) do begin try ii:=ii+1; log.d('Number='+inttostr(ii)); StringToJString('TEST') ; //CRASH AFTER ~ 51200 except end; Result:=true; end; except end; end;  
    Приложение падает (исключение не ловится) если вызвать эту функцию! В logcat вижу следующую информацию об ошибке: JNI ERROR (app bug): global reference table overflow (max=51200) ....
     
    Получается StringToJString не освобождает память.
    Я пробовал также присваивать Js:JString; Js:= StringToJString('..'); Js._Release ; пробовал много способов по удалению выделенного объекта, но результат был отрицательный!!!
    Помогите решить проблему с использование обычных строк JString!!
    Как правильно освободить память из под JString?
×
×
  • Создать...