为了账号安全,请及时绑定邮箱和手机立即绑定

Golang:使用 log.Println 登录文件是否负责并发访问

Golang:使用 log.Println 登录文件是否负责并发访问

Go
慕神8447489 2021-07-30 14:04:43
我有数百个使用 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
提交
取消
意见反馈 帮助中心 APP下载
官方微信