Создал приложение с XControl. Через несколько дней программа останавливается по нехватке памяти в компьютере.
Выявил, что при чтении двоичного свойства XControl возникает небольшая утечка памяти.
Создал тестовый XControl с двумя переменными в State.
При чтении свойства boolean утечка сразу видна. При чтении numeric нет.
Утечка есть в среде разработки LV19 под win10 и в скомпилированном *.exe под win 7 embedded.
Если не использовать чтение свойств утечки нет.
Можно конечно не использовать XControl, но хотелось бы разобраться. Вроде тот же класс.
По форумам поискал. Менял boolean из панелей classic, system.
Прошу помочь разобраться.
Утечка памяти в XControl
-
- professor
- Сообщения: 3410
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: Утечка памяти в XControl
В LV15 утечки не вижу.
В оригинале логика именно такая, или всё же есть какие-то операции? В вашем тесте вообще ничего не происходит при чтении/записи параметров, но обычно же они для чего-то нужны. Может, в этих действиях утечка и прячется?
В оригинале логика именно такая, или всё же есть какие-то операции? В вашем тесте вообще ничего не происходит при чтении/записи параметров, но обычно же они для чего-то нужны. Может, в этих действиях утечка и прячется?
- jane_wild
- master
- Сообщения: 461
- Зарегистрирован: 30 июн 2016, 02:11
- Версия LabVIEW: 2020
- Благодарил (а): 84 раза
- Поблагодарили: 15 раз
- Контактная информация:
Re: Утечка памяти в XControl
Windows 10, LabVIEW 2020 Запустила test.vi, открыла Task Manager. Наблюдаю утечку памяти при чтении свойств как Boolean, так и Numeric
-
- adviser
- Сообщения: 231
- Зарегистрирован: 06 ноя 2020, 15:37
- Версия LabVIEW: 19
- Благодарил (а): 18 раз
- Поблагодарили: 37 раз
- Контактная информация:
Re: Утечка памяти в XControl
В оригинале есть другие операции. Я их все убрал. Оставил только те элементы, которые не могут глючить.
Утечка не определяется в Labview. В менджере задач Windows видно если повысить скорость и увеличить количество элементов.
При опросе 3х элементов 10 раз в секунду память переполняется примерно через неделю или меньше.
Работаю с 19 версией.
-
- professor
- Сообщения: 3410
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: Утечка памяти в XControl
Запусти 18, пока утечки тоже не наблюдаю, есть скачки +/-, пусть поработает.
Но если утечка идёт именно в таком виде, без всяких действий, то это совсем печально.
Но если утечка идёт именно в таком виде, без всяких действий, то это совсем печально.
-
- professor
- Сообщения: 3410
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: Утечка памяти в XControl
5 часов, я уже и забыл про неё, никаких утечек...
тестирую на 18й, win10.
Выглядит это подозрительно.
тестирую на 18й, win10.
Выглядит это подозрительно.
-
- professor
- Сообщения: 3410
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: Утечка памяти в XControl
Заинтриговали, пошёл гуглить..
Вот что нашёл
И там у меня память не уползает.
Включил "advanced>synchronous display" и всё быстро упало. Так что это один из рецептов (судя по посту не 100%ый)
Вот что нашёл
И там у меня память не уползает.
Включил "advanced>synchronous display" и всё быстро упало. Так что это один из рецептов (судя по посту не 100%ый)
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: Утечка памяти в XControl
Тестовый пример под LV2017 показывает загрузку процессора 25%-30% (у меня нагруженная видеообработка столько потребляет)
-
- adviser
- Сообщения: 231
- Зарегистрирован: 06 ноя 2020, 15:37
- Версия LabVIEW: 19
- Благодарил (а): 18 раз
- Поблагодарили: 37 раз
- Контактная информация:
Re: Утечка памяти в XControl
Включил "advanced>synchronous display" утечка прекратилась.Artem.spb писал(а): ↑17 июн 2021, 22:58 Заинтриговали, пошёл гуглить..
Вот что нашёл
И там у меня память не уползает.
Включил "advanced>synchronous display" и всё быстро упало. Так что это один из рецептов (судя по посту не 100%ый)
Поскольку непонятно как работает XControl перенес нужное свойство из State.ctl в Data.ctl. Тип элемента стал cluster и утечки прекратились.
Пока информации по работе этого элемента недостаточно и времени на эксперименты нет.