func (d *Dumper) dump(p ProfileOpts, pp *pprof.Profile) { d.Lock() defer d.Unlock() now := time.Now() lastDump := d.lastDumps[pp.Name()] if now.Before(lastDump.Add(d.throttle)) { return } d.lastDumps[pp.Name()] = now if p.Action != nil { p.Action(pp) } }