我有数百个使用 log.Println() 写入日志文件的子例程我正在使用 log.Println 写入 error.log 文件。func main() { e, err := os.OpenFile("error.log", os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0666) if err != nil { fmt.Printf("error opening file: %v", err) os.Exit(1) } defer e.Close() errLog := log.New(e, ">>>", log.Ldate|log.Ltime) for i:=0; i<500; i++ { go worker(errLog) }}func worker(errLog log.Logger) { // Do some work errLog.Println("Hello world!!!")}我的方法正确吗?或者我应该使用 channel 来确保一次只有一个进程登录到文件,还是由日志包本身处理?日志包也负责缓冲还是直接写入文件?
2 回答
- 2 回答
- 0 关注
- 231 浏览
添加回答
举报
0/150
提交
取消