> 백엔드 개발 > Golang > Go Mongo-Driver에서 `context.TODO()`와 `context.Background()`를 언제 사용해야 합니까?

Go Mongo-Driver에서 `context.TODO()`와 `context.Background()`를 언제 사용해야 합니까?

Susan Sarandon
풀어 주다: 2024-11-11 18:45:02
원래의
792명이 탐색했습니다.

When to Use `context.TODO()` vs `context.Background()` in Go Mongo-Driver?

Go Mongo-Driver에서 context.TODO()와 context.Background() 중에서 선택

Go Mongo-Driver에서 비어 있지 않은 컨텍스트로 작업하는 것은 다음과 같습니다. 혼란스럽다. context.Background() 및 context.TODO()의 목적을 이해하면 사용법을 명확히 하는 데 도움이 될 수 있습니다.

Go 문서에 따르면:

  • context.Background() : 취소되지 않고 값도 없고 기한도 없는 nil이 아닌 빈 컨텍스트를 반환합니다. 일반적으로 기본 기능, 초기화 및 테스트에서 사용되며 들어오는 요청에 대한 최상위 컨텍스트로 사용됩니다.
  • context.TODO(): nil이 아닌 빈 값을 반환합니다. 문맥. 사용할 Context가 확실하지 않거나 아직 사용할 수 없는 경우(주변 함수가 아직 Context 매개 변수를 허용하도록 확장되지 않았기 때문에) 코드에서는 context.TODO()를 사용해야 합니다.

권장 사항: 컨텍스트가 필요하지만 (아직) 무엇을 사용해야 할지 모르는 경우 context.TODO()를 사용하세요. 어떤 컨텍스트를 사용해야 할지 모르거나 아직 사용할 수 없는 문서입니다.

컨텍스트가 있는 경우 해당 컨텍스트를 사용하거나 여기에서 새 컨텍스트를 파생하는 것을 고려하세요. 예:

  • HTTP 핸들러와 MongoDB 쿼리가 있는 경우 Request.Context()를 사용하면 HTTP 클라이언트가 요청을 중단할 때 취소되므로 리소스를 절약할 수 있습니다.
  • MongoDB 작업에 대한 시간 초과가 있는 경우 적절한 시간 초과를 사용하여 context.Background()에서 컨텍스트를 파생시킵니다.

context.TODO()와 context.Background()의 차이점을 이해하면 Go Mongo-Driver 사용에 적합한 컨텍스트를 선택하여 최적의 리소스 할당 및 처리를 보장합니다.

위 내용은 Go Mongo-Driver에서 `context.TODO()`와 `context.Background()`를 언제 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿