Call Stack (StackTrace)
현재 실행 중인 메서드의 호출 스택의 스택 트레이스를 만드는 방법을 간단하게 포스팅한다.
반응형
< 테스트 코드 >
public class Utill
{
private static string TAG = "[ProjectFinder]";
public static void ShowLog(string _log)
{
#if PROJECT_FINDER
#if SHOW_LOG_CALL_STACK
var stackTrace = new System.Diagnostics.StackTrace(true);
var previusCallStack = stackTrace.GetFrame(1);
if(previusCallStack != null)
Debug.Log($"{TAG}-[{previusCallStack.GetMethod()} Line :{previusCallStack.GetFileLineNumber()}] {_log}");
else
#endif
Debug.Log($"{TAG} {_log}");
#endif
}
...
}
stackTrace.GetFrame(1)으로 0부터시작하는 인덱스에서 첫번째 호출자를 가져온다.
이 코드를 사용하면 어떻게 호출되었는지 추적하거나 디버깅할때 간략하게 확인이 가능하다.
StackTrace 클래스 : [링크]
★☆☆☆☆
반응형
댓글