Доброго времени суток. Подскажите есть ли лимит строк кода в Кибор?
За год разработки бота, проект оброс кучей функций и генерируемый код уже 3 750 строк, при условии, что #include - это она строка (по факту еще примерно 30% кода в инклюдах).
Написал пару строк кода и новый таймер, при вставке генерируемого кода в Кибор вылетает ошибка Out of memory, но не часто, иногда вставляет нормально но при запуске просто очень долго висит в процессах и ничего не происходит (ждал 30 мин). В настройках трансляции выставил 1200 при старте и шаг 120, эффекта нет. Если закомментирую любой из не критичных инклюдов (перевод модального окна на разные языки) или уберу вновь созданный код, то все запускается нормально. Ошибок в иклюдах и в новом коде вроде бы нет, потому что по отдельности все работает.
1. Gormit - 18 Января, 2022 - 03:40:28 - перейти к сообщению
2. Zireael - 18 Января, 2022 - 04:02:46 - перейти к сообщению
Цитата:
В настройках трансляции выставил 1200
Надо уменьшить, а не увеличить.
3. Kibor - 18 Января, 2022 - 04:10:05 - перейти к сообщению
3500 строк не проблема вообще.
Прекрасно работает с настройками
Выделение 300
Шаг 150
Вылетает именно из за увеличенной памяти. Уменьшайте.
Прекрасно работает с настройками
Выделение 300
Шаг 150
Вылетает именно из за увеличенной памяти. Уменьшайте.
4. Zireael - 18 Января, 2022 - 05:00:16 - перейти к сообщению
Kibor, а есть вообще смысл в настройке выделения памяти? Раньше был, быстрее компилировался код, после фикса разницы почти нет.
5. KevinS - 18 Января, 2022 - 05:24:23 - перейти к сообщению
Когда у меня такое было, я в объявлении переменных поменял все.
Было к примеру так:
Сделал так:
Тоже самое с String, Char.
После чего Out of memory ушло.
Было к примеру так:
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};
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 - это считается одной строкой? или он вставляется так же как в файле?
(Добавление)
Может есть ошибки в коде, но что бы проверить нужен запуск проекта и отладчик, а проект вылетает на стадии сборки. Может есть лимит какой-то? Про длину строки знаю. И когда вставляется #include - это считается одной строкой? или он вставляется так же как в файле?
9. Kibor - 20 Января, 2022 - 06:12:42 - перейти к сообщению
Лимита нет.
#include просто заменяется на код который в файле. Это много строк.
#include просто заменяется на код который в файле. Это много строк.
10. Gormit - 20 Января, 2022 - 12:22:27 - перейти к сообщению
Все перепробовал, Out of memory не могу победить...
Стоит сократить код до 3500 - 3700 строк и сразу начинает нормально собираться проект. Хелп, что я не так делаю? у меня 6 таймеров, но постоянно работают 3, остальные по ситуации. В таймерах меняю названия переменных (добавляю индекс от номера таймера), от чего имею 6 функций FineImage и Mouse.
Если удаляю любую функцию FineImage, в виду того что она занимает достаточное количество строк, тоже все запускается. Если закомментировать - out of memory.
Сгенерировал код без ресурсов, получилось 3 600 строк кода и проект запустился. Я понимаю что не в количестве строк кода может быть проблема, но может хоть мысль подкинуть, куда копать?
Стоит сократить код до 3500 - 3700 строк и сразу начинает нормально собираться проект. Хелп, что я не так делаю? у меня 6 таймеров, но постоянно работают 3, остальные по ситуации. В таймерах меняю названия переменных (добавляю индекс от номера таймера), от чего имею 6 функций FineImage и Mouse.
Если удаляю любую функцию FineImage, в виду того что она занимает достаточное количество строк, тоже все запускается. Если закомментировать - out of memory.
Сгенерировал код без ресурсов, получилось 3 600 строк кода и проект запустился. Я понимаю что не в количестве строк кода может быть проблема, но может хоть мысль подкинуть, куда копать?