func (m *Metrics) Start(name string) {
	if m == nil {
		return
	}
	m.closeMark()
	m.curMark = &mark{name: name}
	// Unlikely we need to a GC here, as one was likely just done in closeMark.
	if m.shouldPProf() {
		f, err := os.Create(makePProfFilename(m.filebase, name, "cpuprof"))
		if err != nil {
			panic(err)
		}
		m.pprofFile = f
		if err = pprof.StartCPUProfile(m.pprofFile); err != nil {
			panic(err)
		}
	}
	runtime.ReadMemStats(&m.curMark.startM)
	m.curMark.startT = time.Now()
}
// Starts marks the beginning of a new measurement phase.
// Once a metric is started, it continues until either a Report is issued, or another Start is called.
Starts marks the beginning of a new measurement phase.
Once a metric is started, it continues until either a Report is issued, or another Start is called.
// Starts marks the beginning of a new measurement phase . // Once a metric is started it continues until either a Report is issued or another Start is called .
func (m *Metrics) Start(name string) {
	if m == nil {
		return
	}
	m.closeMark()
	m.curMark = &mark{name: name}
	if m.shouldPProf() {
		f, err := os.Create(makePProfFilename(m.filebase, name, "cpuprof"))
		if err != nil {
			panic(err)
		}
		m.pprofFile = f
		if err = pprof.StartCPUProfile(m.pprofFile); err != nil {
			panic(err)
		}
	}
	runtime.ReadMemStats(&m.curMark.startM)
	m.curMark.startT = time.Now()
}
func ( m * Metrics ) Start ( name string ) { if m == nil { return } m . closeMark ( ) m . curMark = & mark { name : name } if m . shouldPProf ( ) { f , err := os . Create ( makePProfFilename ( m . filebase , name , " " ) ) if err != nil { panic ( err ) } m . pprofFile = f if err = pprof . StartCPUProfile ( m . pprofFile ) ; err != nil { panic ( err ) } } runtime . ReadMemStats ( & m . curMark . startM ) m . curMark . startT = time . Now ( ) }
Starts marks the beginning of a new measurement phase.
Starts marks the beginning of a new measurement phase .
// Unlikely we need to a GC here, as one was likely just done in closeMark.