// FinishWait is like Finish, but if s is a root span, it waits until uploading
// is finished, then returns an error if one occurred.
FinishWait is like Finish, but if s is a root span, it waits until uploading
is finished, then returns an error if one occurred.
// FinishWait is like Finish but if s is a root span it waits until uploading // is finished then returns an error if one occurred .
func (s *Span) FinishWait(opts ...FinishOption) error {
	if s == nil {
		return nil
	}
	if !s.tracing() {
		return nil
	}
	return s.trace.finish(s, true, opts...)
}
func ( s * Span ) FinishWait ( opts ... FinishOption ) error { if s == nil { return nil } if ! s . tracing ( ) { return nil } return s . trace . finish ( s , true , opts ... ) }
FinishWait is like Finish, but if s is a root span, it waits until uploading
is finished, then returns an error if one occurred.
FinishWait is like Finish but if s is a root span it waits until uploading is finished then returns an error if one occurred .