Paquete | flash.sampler |
Clase | public class Sample |
Herencia | Sample Object |
Subclases | DeleteObjectSample, NewObjectSample |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9.0.115.0 |
Elementos de API relacionados
Propiedades públicas
Métodos públicos
Constantes públicas
Constante | Definido por | ||
---|---|---|---|
stack : Array
Contiene información sobre los métodos ejecutados por Flash Player durante un periodo concreto de tiempo. | Sample | ||
time : Number
Microsegundos que definen la duración de la instancia de Sample. | Sample |
Información sobre constantes
stack | Constante |
public const stack:Array
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9.0.115.0 |
Contiene información sobre los métodos ejecutados por Flash Player durante un periodo concreto de tiempo. El formato del trazo de pila es similar al contenido mostrado en el cuadro de diálogo de excepciones de la versión del depurador de Flash Player. Sólo para la versión del depurador de Flash Player.
time | Constante |
public const time:Number
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9.0.115.0 |
Microsegundos que definen la duración de la instancia de Sample. Sólo para la versión del depurador de Flash Player.
Ejemplos Cómo utilizar este ejemplo
SampleTypesExample.as
En el siguiente ejemplo se utilizan las propiedades
stack
y time
de un objeto Sample s
para recopilar muestras de memoria. Las muestras contienen objetos NewObjectSample (el conjunto newSamples
), objetos DeleteObjectSample (el conjunto delSamples
) y objetos de muestra de memoria de CPU (el conjunto cpuSamples
). Para el utilizar el visor de memoria, debe tener instalada la versión 9.0.115.0 o posterior del depurador de Flash Player.
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()); } } } }
Tue Jun 12 2018, 02:12 PM Z