Главная / Action Script 3
Пакетflash.sampler
Классpublic final class NewObjectSample
НаследованиеNewObjectSample Inheritance Sample Inheritance Object

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9.0.115.0

Класс NewObjectSample воспроизводит объекты, которые были созданы в потоке getSamples(). Только для отладочной версии проигрывателя Flash Player.

Посмотреть примеры

См. также

flash.sampler.getSamples()


Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  object : *
[только для чтения] Объект NewObjectSample, если он еще существует.
NewObjectSample
 Inheritedprototype : Object
[статические] Ссылка на модель объекта класса или функции.
Object
Общедоступные методы
 МетодОпределено
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление заданного объекта.
Object
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Общедоступные константы
 Константа Определено
  id : Number
Уникальный идентификационный номер, который совпадает с идентификационным номером DeleteObjectSample.
NewObjectSample
 Inheritedstack : Array
Содержит информацию о методах, выполненных проигрывателем Flash Player за указанный период времени.
Sample
 Inheritedtime : Number
Число микросекунд, определяющее продолжительность экземпляра Sample.
Sample
  type : Class
Объект Class соответствует объекту, созданному в потоке getSamples().
NewObjectSample
Сведения о свойстве
objectсвойство
object:*  [только для чтения]

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9.0.115.0

Объект NewObjectSample, если он еще существует. Если объект заполнен некорректными данными, это свойство не определено и существует соответствующий объект DeleteObjectSample. Только для отладочной версии проигрывателя Flash Player.



Реализация
    public function get object():*

См. также

Сведения о константе
idКонстанта
public const id:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9.0.115.0

Уникальный идентификационный номер, который совпадает с идентификационным номером DeleteObjectSample. Только для отладочной версии проигрывателя Flash Player.

См. также

typeКонстанта  
public const type:Class

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9.0.115.0

Объект Class соответствует объекту, созданному в потоке getSamples(). Только для отладочной версии проигрывателя Flash Player.

Примеры Как пользоваться примерами
SampleTypesExample.as

В следующем примере свойства stack и time объекта Sample с именем s используются для сбора образцов памяти. Эти образцы содержат объекты NewObjectSample (массив newSamples), объекты DeleteObjectSample (массив delSamples) и объекты с образцами памяти ЦП (массив cpuSamples). Для использования профилировщика памяти необходимо, чтобы был установлен отладочный вариант проигрывателя Flash Player версии 9.0.115.0 или более поздней.
package 
{
    import flash.sampler.*
    import flash.system.*
    import flash.utils.*
    import flash.display.Sprite
    public class sampleTypes extends Sprite
    {
      var b:Boolean = true
        public function sampleTypes() {
            flash.sampler.startSampling();
            for(var i:int=0;i<10000;i++)
              new Object();

            var cpuSamples:Array=[];
            var newSamples:Array=[];
            var delSamples:Array=[];
            var ids:Array=[]

            var lastTime:Number=0;
            for each(var s:Sample in getSamples()) {
              
              assert(s.time > 0); // positive
              assert(Math.floor(s.time) == s.time, s.time); // integral
              assert(s.time >= lastTime, s.time + ":" + lastTime); // ascending
              assert(s.stack == null || s.stack is Array)
              if(s.stack) {
                assert(s.stack[0] is StackFrame);
                assert(s.stack[0].name is String);
            }
              
              if(s is NewObjectSample) {
                var nos = NewObjectSample(s);
                assert(s.id > 0, s.id);
                assert(s.type is Class, getQualifiedClassName(s.type));
                newSamples.push(s);
                ids[s.id] = "got one";
              } else if(s is DeleteObjectSample) {
                var dos = DeleteObjectSample(s);
                delSamples.push(s);
                assert(ids[dos.id] == "got one");
              } else if(s is Sample)
                cpuSamples.push(s);
              else {
                assert(false);
              }
              lastTime = s.time;
            }

            trace(b)
            trace(newSamples.length > 0)
            trace(cpuSamples.length > 0)
            trace(delSamples.length > 0)

        }

        private function assert(e:Boolean, mess:String=null):void {
          b = e && b;
          if(true && !e) {
            if(mess) trace(mess);
            trace(new Error().getStackTrace());
          }     
        }         
    }
}