flash.sampler
public final class DeleteObjectSample
继承DeleteObjectSample Inheritance Sample Inheritance Object

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9.0.115.0

DeleteObjectSample 类表示在 getSamples() 流中创建的对象;每个 DeleteObjectSample 对象与一个 NewObjectSample 对象相对应。仅适用于 Flash Player 调试版。

查看示例

另请参见

flash.sampler.getSamples()
How the Flex profiler works


公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
公共方法
 方法定义方
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
  id : Number
与 NewObjectSample 的标识号相匹配的唯一标识号。
DeleteObjectSample
  size : Number
DeleteObjectSample 对象在删除之前的大小。
DeleteObjectSample
 Inheritedstack : Array
包含 Flash Player 在指定时段执行的方法的相关信息。
Sample
 Inheritedtime : Number
定义 Sample 实例持续时间的微秒数。
Sample
常量详细信息
id常量
public const id:Number

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9.0.115.0

与 NewObjectSample 的标识号相匹配的唯一标识号。仅适用于 Flash Player 调试版。

另请参见

size常量 
public const size:Number

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9.0.115.0

DeleteObjectSample 对象在删除之前的大小。仅适用于 Flash Player 调试版。

另请参见

示例 如何使用示例
SampleTypesExample.as

下面的示例使用 Sample 对象 sstacktime 属性来收集内存样本。该样本包含 NewObjectSample 对象(newSamples 数组)、DeleteObjectSample 对象(delSamples 数组)和 CPU 内存样本对象(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());
          }     
        }         
    }
}