Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Out of memory и зависания Кибор

Страниц (4): [1] 2 3 4 »
 

1. Gormit - 18 Января, 2022 - 03:40:28 - перейти к сообщению
Доброго времени суток. Подскажите есть ли лимит строк кода в Кибор?
За год разработки бота, проект оброс кучей функций и генерируемый код уже 3 750 строк, при условии, что #include - это она строка (по факту еще примерно 30% кода в инклюдах).
Написал пару строк кода и новый таймер, при вставке генерируемого кода в Кибор вылетает ошибка Out of memory, но не часто, иногда вставляет нормально но при запуске просто очень долго висит в процессах и ничего не происходит (ждал 30 мин). В настройках трансляции выставил 1200 при старте и шаг 120, эффекта нет. Если закомментирую любой из не критичных инклюдов (перевод модального окна на разные языки) или уберу вновь созданный код, то все запускается нормально. Ошибок в иклюдах и в новом коде вроде бы нет, потому что по отдельности все работает.
2. Zireael - 18 Января, 2022 - 04:02:46 - перейти к сообщению
 Цитата:
В настройках трансляции выставил 1200

Надо уменьшить, а не увеличить.
3. Kibor - 18 Января, 2022 - 04:10:05 - перейти к сообщению
3500 строк не проблема вообще.
Прекрасно работает с настройками
Выделение 300
Шаг 150

Вылетает именно из за увеличенной памяти. Уменьшайте.
4. Zireael - 18 Января, 2022 - 05:00:16 - перейти к сообщению
Kibor, а есть вообще смысл в настройке выделения памяти? Раньше был, быстрее компилировался код, после фикса разницы почти нет.
5. KevinS - 18 Января, 2022 - 05:24:23 - перейти к сообщению
Когда у меня такое было, я в объявлении переменных поменял все.

Было к примеру так:
CODE:
int x, y, k=53, i=0, zz[50], qs[6], kk[3]={3,3,3}, AA[2]={0,1};


Сделал так:
CODE:

int x, y;
int k=53, i=0;
int zz[50], qs[6];
int kk[3]={3,3,3}, AA[2]={0,1};

Тоже самое с String, Char.

После чего Out of memory ушло.
6. Gormit - 19 Января, 2022 - 10:36:11 - перейти к сообщению
Спасибо, помогло, выставил 300 и шаг 150. Только одно не понятно, чем больше памяти выделяю, тем хуже...
7. Kibor - 19 Января, 2022 - 11:42:25 - перейти к сообщению
Выделять память надо если очень большой проект и видно замедление при первой сборке.
При последующих память уже выделена.
Сейчас не очень актуально, но настройка осталась.
8. Gormit - 20 Января, 2022 - 03:43:06 - перейти к сообщению
Что-то опять двадцать пять, только теперь вылазит Out of memory при сборке проекта. Раньше проект собирался за 2-3 мин, а сейчас больше 10 мин может собираться и в 80% случаев вываливается с ошибкой.
(Добавление)
Может есть ошибки в коде, но что бы проверить нужен запуск проекта и отладчик, а проект вылетает на стадии сборки. Может есть лимит какой-то? Про длину строки знаю. И когда вставляется #include - это считается одной строкой? или он вставляется так же как в файле?
9. Kibor - 20 Января, 2022 - 06:12:42 - перейти к сообщению
Лимита нет.
#include просто заменяется на код который в файле. Это много строк.
10. Gormit - 20 Января, 2022 - 12:22:27 - перейти к сообщению
Все перепробовал, Out of memory не могу победить...
Стоит сократить код до 3500 - 3700 строк и сразу начинает нормально собираться проект. Хелп, что я не так делаю? у меня 6 таймеров, но постоянно работают 3, остальные по ситуации. В таймерах меняю названия переменных (добавляю индекс от номера таймера), от чего имею 6 функций FineImage и Mouse.
Если удаляю любую функцию FineImage, в виду того что она занимает достаточное количество строк, тоже все запускается. Если закомментировать - out of memory.

Сгенерировал код без ресурсов, получилось 3 600 строк кода и проект запустился. Я понимаю что не в количестве строк кода может быть проблема, но может хоть мысль подкинуть, куда копать?

Powered by ExBB FM 1.0 Final