Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 17.12.2014, 11:54
grafillo! вне форума Посмотреть профиль Отправить личное сообщение для grafillo! Найти все сообщения от grafillo!
  № 1  
Ответить с цитированием
grafillo!

Регистрация: Sep 2011
Сообщений: 366
По умолчанию Замерзает движение когда идёт обработка скрипта

Есть элемент там крутится кружок по кругу с помощью моушн твин, по таймеру получаем XML и во время его обработки кружок который крутится замирает на пару миллисекунд, но это заметно. Что-нибудь можно с этим сделать чтобы он крутился несмотря на загруженность проца скриптами?

Добавлено через 16 минут
и причём проблема в XML, чем дольше получаем XML тем больше глючит, может габач колектор гдето не удаляет xml и оно гдето скапливается. Мож проблема в переменных которые я создаю каждый раз когда получаю xml?
Код AS3:
 
public	function loadmes (resp:XML,s:Sprite,sc:ScrollPane,sprPip:Sprite,pipScroll:ScrollPane,openDialogWindow:Function):void {
 
 
	var peoples:XMLList = resp.peoples.pip; 
	var messages:XMLList = resp.message.mes;
	var peoplesNum:Number =  peoples.length();
}
 
private function loadMes (resp:XML){ // передаёт файл в месадж
	var messages:XMLList = resp.message.mes;
 
	StaticFunce.idmes = (messages[messages.length()-1].@id>0)?messages[messages.length()-1].@id:StaticFunce.idmes;
	loadmes(resp,StaticFunce.chatSprite,chatWindows.sc,StaticFunce.PeopleSprite,chatWindows.pipScroll,clickDialogWindow);
 
}

Старый 17.12.2014, 12:24
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 2  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Дело явно в загрузке. А что если заранее все xml подгружать?
Если не вариант(например у вас тысячи xml), можно вынести загрузку в отдельный воркер.

Старый 17.12.2014, 12:30
grafillo! вне форума Посмотреть профиль Отправить личное сообщение для grafillo! Найти все сообщения от grafillo!
  № 3  
Ответить с цитированием
grafillo!

Регистрация: Sep 2011
Сообщений: 366
Цитата:
Сообщение от illuzor Посмотреть сообщение
Дело явно в загрузке. А что если заранее все xml подгружать?
Если не вариант(например у вас тысячи xml), можно вынести загрузку в отдельный воркер.
нее там надо постоянно подгружать прилога типа онлайн игра

Старый 17.12.2014, 12:33
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 4  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Тогда единственный выход, который я вижу - грузить через воркер.
Возможно, кто-то предложит другие варианты.

Старый 17.12.2014, 12:36
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 5  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Сделайте как бы частичную обработку. Получили XML, отдали его "асинхронному" парсеру, который внутри всего лишь в каждом кадре обрабатывает, скажем, по 10 XML нодов, а не весь XML за раз. По окончанию диспатчит событие "всеГотовоЗабирай".
__________________
тут я

Старый 17.12.2014, 12:41
grafillo! вне форума Посмотреть профиль Отправить личное сообщение для grafillo! Найти все сообщения от grafillo!
  № 6  
Ответить с цитированием
grafillo!

Регистрация: Sep 2011
Сообщений: 366
Цитата:
Сообщение от КорДум Посмотреть сообщение
Сделайте как бы частичную обработку. Получили XML, отдали его "асинхронному" парсеру, который внутри всего лишь в каждом кадре обрабатывает, скажем, по 10 XML нодов, а не весь XML за раз. По окончанию диспатчит событие "всеГотовоЗабирай".
там максимум 100 xml строчек, и я тестировал на 40 строчках, причём поначалу всё работает нормально где-то после 10 минуты работы начинает подтормаживать, такое ощущение что xml где-то скапливается и что-то забивается какой-то кластер памяти чтоли х)

Старый 17.12.2014, 12:51
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 7  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Посмотрите в профайлере. И естественно, если Вы не дергаете у XML#dispose(), он останется в памяти.
__________________
тут я

Старый 17.12.2014, 12:55
grafillo! вне форума Посмотреть профиль Отправить личное сообщение для grafillo! Найти все сообщения от grafillo!
  № 8  
Ответить с цитированием
grafillo!

Регистрация: Sep 2011
Сообщений: 366
а как посмареть в профалйере?
Цитата:
он останется в памяти.
- а что нужно прописывать чтобы его постоянно удалять?
а габадж коллектор не удаляет неиспользованные xml?
а если я каждый раз при получении xml в функции создаю новые переменные с одинаковыми именами эти все переменные удаляются или скапливаются?

Старый 17.12.2014, 13:08
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 9  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
а как посмареть в профалйере?
Запускаете любой профайлер и смотрите, какие объекты живы на текущий момент.
Цитата:
- а что нужно прописывать чтобы его постоянно удалять?
Я же написал даже название метода, откройте документацию.
Цитата:
а габадж коллектор не удаляет неиспользованные xml?
Без команды нет.
Цитата:
а если я каждый раз при получении xml в функции создаю новые переменные с одинаковыми именами эти все переменные удаляются или скапливаются?
Локальные переменные живут только в пределах того метода или функции, где они объявлены. Прочтите про области видимости.
__________________
тут я

Старый 17.12.2014, 13:24
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 10  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Цитата:
Я же написал даже название метода, откройте документацию.
У XML нет такого метода. Вычищается из памяти через System.disposeXML(xml)

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.