Go 메모리에서 객체를 "고정"할 수 있습니까?
C#에서 객체는 메모리에서 일정한 위치를 유지하려면 "고정"되어야 합니다. Go에도 비슷한 메커니즘이 있나요?
답변:
Go에서는 객체 주소가 참조될 때 본질적으로 영구적입니다.
다음과 같은 언어와는 달리 C, Go에서는 핸들이나 간접 참조를 사용하지 않고 객체를 직접 참조합니다. 객체가 변수에 할당되면 그 주소는 불변으로 유지됩니다.
Go 문서에 언급된 대로:
"C와 달리 객체의 주소를 반환하는 것은 완벽하게 괜찮습니다. 지역 변수, 변수와 연관된 저장소는 함수가 반환된 후에도 유지됩니다."
객체의 주소를 얻으려면 & 연산자를 사용합니다. 주소가 있으면 이를 변수에 할당하거나 인수로 전달할 수 있습니다.
이 영구 주소 메커니즘은 Go 코드에서 참조된 객체가 "고정"과 유사한 고정된 메모리 위치에 유지되도록 보장합니다. 다른 언어로.
위 내용은 Go 객체를 C#처럼 특정 메모리 위치에 \'고정\'할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!