// expWriter returns a traceWriter that writes into the current M's stream for // the given experiment. func (tl traceLocker) expWriter(exp traceExperiment) traceWriter { … } // unsafeTraceExpWriter produces a traceWriter for experimental trace batches // that doesn't lock the trace. Data written to experimental batches need not // conform to the standard trace format. // // It should only be used in contexts where either: // - Another traceLocker is held. // - trace.gen is prevented from advancing. // // This does not have the same stack growth restrictions as traceLocker.writer. // // buf may be nil. func unsafeTraceExpWriter(gen uintptr, buf *traceBuf, exp traceExperiment) traceWriter { … } type traceExperiment … const traceNoExperiment … const traceExperimentAllocFree … const traceNumExperiments … const _ … const traceEvSpan … const traceEvSpanAlloc … const traceEvSpanFree … const traceEvHeapObject … const traceEvHeapObjectAlloc … const traceEvHeapObjectFree … const traceEvGoroutineStack … const traceEvGoroutineStackAlloc … const traceEvGoroutineStackFree …