サンプラークラスを使用してFlashでマイクロタイムを取得するためにあらゆることを試みましたが、役に立ちませんでした。これまでの私のコードは次のとおりです。
import flash.sampler.Sample;
import flash.sampler.getLexicalScopes;
import flash.sampler.getMemberNames;
import flash.sampler.getSampleCount;
import flash.sampler.getSamples;
import flash.sampler.getSize;
import flash.sampler.startSampling;
import flash.sampler.stopSampling;
private function init():void {
startSampling();
var x:String = "Hello world";
stopSampling();
var samples:Object = getSamples();
var sampleCount:int = getSampleCount(); // 0
}
SamplerおよびSamplerScript拡張クラスは次のとおりです。時間を取得するために呼び出しsetconst_time
ています。別のメソッドを呼び出している可能性もあります。
uint64_t Sampler::nowMicros()
{
return GC::ticksToMicros(VMPI_getPerformanceCounter());
}
Samplerコアクラスに見られるように。
getMicroTime()
メソッド ( getTimer()を参照) があることを望んでいましたが、ありません。そこで、コード ブロックの前後にサンプルを作成しようとしていました。呼び出しは、オブジェクトgetSamples
の配列を返す必要がありSample
ます。各Sample
インスタンスにはsample.time
、マイクロ秒単位の時間を持つプロパティが必要です。ただし、上記のコードを使用すると、サンプルは取得されません。サンプル数はゼロです。