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

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

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

Регистрация: Aug 2010
Сообщений: 86
По умолчанию Ищу способ определить сколько байт весит тот или иной объект.

Итак, есть ли способ определить сколько памяти занимает конкретный объект в конкретной переменной?
Рылся рылся в справочнике адобы, но так ничего связоного с памятью (кроме flash.system.System.totalMemory()) и не нашел =(
AS3 плевать хотел на память? У переменных есть хоть какое-то дно или они бездонные?

Старый 13.04.2011, 01:16
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 2  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
flash.sampler.getSize
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.

Старый 13.04.2011, 01:39
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 3  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
можно еще сериализовать в byteArray и посмотреть какая у него стала длина.

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
можно еще сериализовать в byteArray и посмотреть какая у него стала длина.
... и долго удивляться потом

Код AS3:
var s:String = "1234";
trace(getSize(s)); // 24
 
var ba:ByteArray = new ByteArray();
ba.writeObject(s);
trace(ba.length); // 6
 
ba.length = 0;
ba.writeUTF(s);
trace(ba.length); // 6
 
ba.length = 0;
ba.writeUTFBytes(s);
trace(ba.length); // 4
Тем более, что правильно сеарилизовать, например, Sprite у Вас вряд ли получится. Плюс ко всему есть всякие IExternalizable, которые позволяют записывать объекты в ByteArray использую свой собственный алгоритм
__________________
...вселенская грусть

Старый 13.04.2011, 13:42
Anton Riot вне форума Посмотреть профиль Отправить личное сообщение для Anton Riot Посетить домашнюю страницу Anton Riot Найти все сообщения от Anton Riot
  № 5  
Ответить с цитированием
Anton Riot

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 291
Отправить сообщение для Anton Riot с помощью ICQ
Определять, сколько памяти занимает переменная, для AS3 программиста, скорее всего, не нужна. Это не его забота, я думаю. Это к другим языкам относится.

А размер объектов можно посмотреть в логе при компиляции.

Старый 13.04.2011, 15:02
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 6  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
Сообщение от Anton Riot Посмотреть сообщение
Определять, сколько памяти занимает переменная, для AS3 программиста, скорее всего, не нужна. Это не его забота, я думаю. Это к другим языкам относится.
С чего такой вывод?
Цитата:
Сообщение от Anton Riot Посмотреть сообщение
А размер объектов можно посмотреть в логе при компиляции.
И что же там можно увидеть?

Старый 13.04.2011, 19:20
Anton Riot вне форума Посмотреть профиль Отправить личное сообщение для Anton Riot Посетить домашнюю страницу Anton Riot Найти все сообщения от Anton Riot
  № 7  
Ответить с цитированием
Anton Riot

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 291
Отправить сообщение для Anton Riot с помощью ICQ
Вывод с того, что работа напрямую с памятью в этом языке ограничена. В size report можно увидеть размеры объектов библиотеки, что за глупый вопрос?

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
Сообщение от Anton Riot Посмотреть сообщение
Вывод с того, что работа напрямую с памятью в этом языке ограничена.
И что? Это дает право плевать на оптимизацию?
Цитата:
Сообщение от Anton Riot Посмотреть сообщение
В size report можно увидеть размеры объектов библиотеки, что за глупый вопрос?
size-report появился только в Hero. Который официально еще не вышел (по крайней мере до конца мая). К тому же, с его помощью нельзя узнать размер динамического объекта, только то что доступно на этапе компиляции.

Старый 13.04.2011, 20:09
Anton Riot вне форума Посмотреть профиль Отправить личное сообщение для Anton Riot Посетить домашнюю страницу Anton Riot Найти все сообщения от Anton Riot
  № 9  
Ответить с цитированием
Anton Riot

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 291
Отправить сообщение для Anton Riot с помощью ICQ
Оптимизация размера занимаемой памяти начинается с чистки за собой всего, что больше не используется, а минимизировать биты, занимаемые конкретным значением конкретной переменной - занятие сомнительной полезности. Только разве что если речь идёт о пересылке пакетов в сокетах, но для определения размера byteArray как раз есть свой функционал.

size-report есть даже в Adobe Flash CS3. Да, только то, что доступно на этапе компиляции, - т.е. что есть в библиотеке. И что? Этого для многих задач может вполне хватить

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
Оптимизация размера занимаемой памяти начинается с чистки за собой всего, что больше не используется
Это не оптимизация, а обычный процесс разработки.
Цитата:
а минимизировать биты, занимаемые конкретным значением конкретной переменной - занятие сомнительной полезности.
Хорошо, сколько памяти сожрут 20 динамически созданных битмап?
Цитата:
size-report есть даже в Adobe Flash CS3.
Понятия не имею, что там в Flash CSx творится, уже года три как не пользовался.
Цитата:
Этого для многих задач может вполне хватить
Для многих — это для одной единственной? И что делать если библиотека пуста? Embed, вроде как, Flash CSx уже понимает.

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

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

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


 


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


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