Еще раз подчеркну - вопросы оптимизации очень важны.
Если бы Вы, к примеру, занимались 3D графикой, то мы бы с Вами перетирали сейчас не каждый лишний байт, а каждый лишний полигон на модели - эта ситуация всегда присутствует.
Футбол. Премьер-лига 2014-2015
- Mr. Kibernetik
- Site Admin
- Posts: 4786
- Joined: Mon Nov 19, 2012 10:16 pm
- My devices: iPhone, iPad, MacBook
- Location: Russia
- Flag:
- Фант
- Posts: 1363
- Joined: Sat Nov 30, 2013 10:01 am
- My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
- Location: Россия,Санкт-Петербург
- Flag:
- Contact:
Re: Футбол. Премьер-лига 2014-2015
По Вашим советам стремлюсь к оптимизации, но видно не догоняю до конца...первые программы были вообще ужасны по исполнению...сейчас сам вижу что лучше, но не идеально...однозначно спасибо за советыMr. Kibernetik wrote:Еще раз подчеркну - вопросы оптимизации очень важны.
Если бы Вы, к примеру, занимались 3D графикой, то мы бы с Вами перетирали сейчас не каждый лишний байт, а каждый лишний полигон на модели - эта ситуация всегда присутствует.
- Фант
- Posts: 1363
- Joined: Sat Nov 30, 2013 10:01 am
- My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
- Location: Россия,Санкт-Петербург
- Flag:
- Contact:
Re: Футбол. Премьер-лига 2014-2015
Вот загрузка spider man 2...
Сколько ни играй в нее-память так и будет на этом уровне: тоесть под завязку и ничего не вылетает
Сколько ни играй в нее-память так и будет на этом уровне: тоесть под завязку и ничего не вылетает
- Mr. Kibernetik
- Site Admin
- Posts: 4786
- Joined: Mon Nov 19, 2012 10:16 pm
- My devices: iPhone, iPad, MacBook
- Location: Russia
- Flag:
Re: Футбол. Премьер-лига 2014-2015
Вылет идет при очень быстром переполнении памяти.
При переполнении памяти система выдает приложению предупреждение, что еще немного - и оно будет выключено принудительно. В этом случае smart BASIC выдает пользователю свое сообщение и нехватке памяти и останавливается.
Но если память набирается слишком быстро, то система даже не успевает выдать предупреждение приложению и просто сразу вырубает его.
При переполнении памяти система выдает приложению предупреждение, что еще немного - и оно будет выключено принудительно. В этом случае smart BASIC выдает пользователю свое сообщение и нехватке памяти и останавливается.
Но если память набирается слишком быстро, то система даже не успевает выдать предупреждение приложению и просто сразу вырубает его.
- Фант
- Posts: 1363
- Joined: Sat Nov 30, 2013 10:01 am
- My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
- Location: Россия,Санкт-Петербург
- Flag:
- Contact:
Re: Футбол. Премьер-лига 2014-2015
И что самое интересное сколько бы не было загружено еще программ дополнительно-все равно эта большая игрушка будет работать! Тоесть постоянно память освобождается. Очень хотелось бы чтобы Вы это привили в sB
- Mr. Kibernetik
- Site Admin
- Posts: 4786
- Joined: Mon Nov 19, 2012 10:16 pm
- My devices: iPhone, iPad, MacBook
- Location: Russia
- Flag:
Re: Футбол. Премьер-лига 2014-2015
Как можно освободить память, если Вы ее заняли и не отдаете?
- Фант
- Posts: 1363
- Joined: Sat Nov 30, 2013 10:01 am
- My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
- Location: Россия,Санкт-Петербург
- Flag:
- Contact:
Re: Футбол. Премьер-лига 2014-2015
Ну не знаю....как одновременно могут работать несколько программ на айпаде? Больших? Загрузил одну, сразу вторую, потом третью, потом четвертую.... И так далее-новая игра ведь не вылетает-памяти для ее загрузки не хватает-старая загруженная игра из памяти очищается...в каждой игре ведь свои спрайты и т.д. Все же очень быстро происходит-наполнение значит тоже быстроеMr. Kibernetik wrote:Как можно освободить память, если Вы ее заняли и не отдаете?
- Mr. Kibernetik
- Site Admin
- Posts: 4786
- Joined: Mon Nov 19, 2012 10:16 pm
- My devices: iPhone, iPad, MacBook
- Location: Russia
- Flag:
Re: Футбол. Премьер-лига 2014-2015
Система архивирует память тех приложений, которые неактивны, и сохраняет ее на диск. Потом восстанавливает, если приложение становится активным.
Но это Вам ничем не поможет.
Если Ваше активное приложение требует у системы память и не освобождает ее в процессе работы - система считает память активной и занятой. Система ведь не может внезапно удалить у Вас какой-нибудь спрайт с экрана просто потому, что ей нехватает памяти на новый спрайт. Ведь если Вы создали спрайт и не удаляете его - значит он Вам нужен. Система держит его в активном доступе, раз Вы сами его не освобождаете.
Если система будет по своему усмотрению (как в случае с фоновыми приложениями) архивировать Ваши данные, то это скажется на плавности работы Вашей программы - она будет подтормаживать в самый неподходящий момент.
Но это Вам ничем не поможет.
Если Ваше активное приложение требует у системы память и не освобождает ее в процессе работы - система считает память активной и занятой. Система ведь не может внезапно удалить у Вас какой-нибудь спрайт с экрана просто потому, что ей нехватает памяти на новый спрайт. Ведь если Вы создали спрайт и не удаляете его - значит он Вам нужен. Система держит его в активном доступе, раз Вы сами его не освобождаете.
Если система будет по своему усмотрению (как в случае с фоновыми приложениями) архивировать Ваши данные, то это скажется на плавности работы Вашей программы - она будет подтормаживать в самый неподходящий момент.
- Фант
- Posts: 1363
- Joined: Sat Nov 30, 2013 10:01 am
- My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
- Location: Россия,Санкт-Петербург
- Flag:
- Contact:
Re: Футбол. Премьер-лига 2014-2015
А в sB такого не происходит. Занятая память быстро не освобождается-просто идет накопление и следует вылет...
Это не критика конечно. Просто Вы знающий и жмете каждый байт, а я не знающий- я просто упертый. Не получилось в первый раз получится второй и т.д. А какому то пользователю просто это не понравится:скажет код правильный и все должно работать, а программа почему-то вылетает и все сразу бросит...
Решение быстрой очистки памяти должно быть.
Это не критика конечно. Просто Вы знающий и жмете каждый байт, а я не знающий- я просто упертый. Не получилось в первый раз получится второй и т.д. А какому то пользователю просто это не понравится:скажет код правильный и все должно работать, а программа почему-то вылетает и все сразу бросит...
Решение быстрой очистки памяти должно быть.
- Mr. Kibernetik
- Site Admin
- Posts: 4786
- Joined: Mon Nov 19, 2012 10:16 pm
- My devices: iPhone, iPad, MacBook
- Location: Russia
- Flag:
Re: Футбол. Премьер-лига 2014-2015
Занятая память - это не что-то абстрактное. Это конкретные спрайты на экране. Как память может "сама" освободиться, если спрайт Вам сейчас нужен? Вы хотите, чтобы он вдруг просто пропал с экрана, потому что система решила освободить немного памяти?Фант wrote:Занятая память быстро не освобождается