반응형
fmt.Println 대신 log.Println을 사용해야하는 이유는 무엇입니까?
에서 log.go (로그 패키지의 구현) :
167 // Println calls l.Output to print to the logger.
168 // Arguments are handled in the manner of fmt.Println.
169 func (l *Logger) Println(v ...interface{}) { l.Output(2, fmt.Sprintln(v...)) }
log.Println
에 대한 함수 래퍼 fmt.Sprintln
입니다. fmt.Println
또는 대신 왜 사용해야 fmt.Sprintln
합니까?
실용적인 이유가 있습니까?
두 가지가 다릅니다.
패키지 로그를 통한 인쇄는 동시 고 루틴으로부터 안전합니다 (일반
fmt
은 그렇지 않음).로그는 자동으로 타이밍 정보를 추가 할 수 있습니다.
그래서 이것들은 완전히 다른 두 가지입니다. log는 로깅 및 fmt
포맷 용입니다. (알겠습니다. log는 동일한 동사와 플래그를 사용하지만 편리합니다.)
참고 URL : https://stackoverflow.com/questions/19646889/why-should-i-use-log-println-instead-of-fmt-println
반응형
'IT TIP' 카테고리의 다른 글
ValueError : 문자열을 float로 변환 할 수 없습니다 : id (0) | 2020.12.08 |
---|---|
data.table을 여러 열로 그룹화하는 방법은 무엇입니까? (0) | 2020.12.08 |
값에 의한 전달 및 이동이 잘못된 관용구를 구성합니까? (0) | 2020.12.08 |
TortoiseSVN에 보관 하시겠습니까? (0) | 2020.12.08 |
특정 열의 데이터가 포함 된 마지막 행을 어떻게 찾을 수 있습니까? (0) | 2020.12.08 |