func finalizeCloseAllStreams()

in out_writeapi.go [520:540]


func finalizeCloseAllStreams(config **outputConfig, id int) bool {
	(*config).mutex.Lock()
	defer (*config).mutex.Unlock()
	errFlag := false
	streamSlice := (*config).managedStreamSlice
	for i := 0; i < len(*(*config).managedStreamSlice); i++ {
		if (*streamSlice)[i].managedstream != nil {
			if (*config).exactlyOnce {
				if _, err := (*streamSlice)[i].managedstream.Finalize(ms_ctx); err != nil {
					log.Printf("Finalizing managed stream for output instance with id %d and stream index %d failed in FLBPluginExit: %s", id, i, err)
					errFlag = true
				}
			}
			if err := (*streamSlice)[i].managedstream.Close(); err != nil {
				log.Printf("Closing managed stream for output instance with id %d and stream index %d failed in FLBPluginExitCtx: %s", id, i, err)
				errFlag = true
			}
		}
	}
	return errFlag
}