2017-03-17 10 views
1

Golang의 스택 추적에 대한 설명을 누군가 나에게 설명 할 수 있기를 바랬는데, 이것은 제가 읽은 튜토리얼에 의해 거의 무시되었습니다. 스택 추적의 예는 내가 가지고 : Golang stack trace details

 

    goroutine 6 [running]: 
    net/http.(*conn).serve.func1(0xc42005ad00) 
     /usr/local/go/src/net/http/server.go:1491 +0x12a 
    panic(0x8079e0, 0xc42000c0c0) 
     /usr/local/go/src/runtime/panic.go:458 +0x243 
    usos-shop-back/usosapi.GetJson(0x0, 0x7d7820, 0xc4202f6d00, 0x0, 0x0) 
     /root/go/src/usos-shop-back/usosapi/usos-hackery.go:20 +0x38 
    ... 
    ... 
    ... 

그래서 나는 오류가 발생한 코드의 라인 수 후 +0x12a, +0x243, +0x38의 의미는 무엇인지 정말 궁금 하군요.

감사합니다. R.C.

P.S : 공황 그것은 스택 프레임과 PC 기능 항목 PC 간의 차이점 func GetJson(*http.Response, interface{}) error

+2

그것은 스택 프레임 PC와 기능 항목 PC의 차이다. (구현 특정 스택 추적 형식 StackOverflow 아마도 좋은 질문 항목이 아닙니다. – JimB

+0

@ 짐바, 감사합니다, 그때 읽을 몇 가지 위키 기사가 있어요. 그러나 나는 왜 그렇게 좋은 질문 주제가 아닌지 알고 싶습니다. 그것은 화염 전쟁으로 이어질까? 거기에 다른 XYZexchange가 있습니까? –

+1

이 주제는 좀 더 회색 영역입니다. 구현 세부 사항이 모든 보편적 인 구현에 적용되지 않을 수 있고, 변경 될 수 있으며 때로는 매우 빠르게 변경되어 질문이나 답변이 오래되거나 오해의 소지가 있기 때문입니다. 스택 추적 형식이 go1에 대해이 시점에서 변경 될 가능성은 크지 않지만 구현을 반영해야하기 때문에 예를 들어 다른 GODEBUG 출력이 버전간에 크게 변경되었습니다. – JimB

답변

0

로 널 포인터에 의해 야기되었다.
덕분에 JimB