void AttachSampler(avmplus::Sampler* sampler) { GCHeap* heap = GCHeap::GetGCHeap(); // May be NULL during OOM shutdown if (heap) { EnterFrame* ef = heap->GetEnterFrame(); if (ef) { GC* gc = ef->GetActiveGC(); if (gc) gc->SetAttachedSampler(sampler); } } }
avmplus::Sampler* GetSampler() { GCHeap* heap = GCHeap::GetGCHeap(); // May be NULL during OOM shutdown if (heap) { EnterFrame* ef = heap->GetEnterFrame(); if (ef) { GC* gc = ef->GetActiveGC(); if (gc) return (avmplus::Sampler*)gc->GetAttachedSampler(); } } return NULL; }