예제 #1
0
        /// <summary>
        /// Enters the method.
        /// </summary>
        /// <param name="tracer">The tracer.</param>
        /// <returns></returns>
        static public TraceThreadInfo EnterMethod(IRITrace tracer)
        {
            TraceThreadInfo threadInfo = RequestObjectManager.GetRequestObject(out bool bNew);

            if (bNew)
            {
                // must be first calling thread (parent)
                threadInfo.RootTracer = tracer;
            }

            threadInfo.Push(tracer);

            return(threadInfo);
        }
예제 #2
0
 /// <summary>
 /// Pushes the specified tracer.
 /// </summary>
 /// <param name="tracer">The tracer.</param>
 public void Push(IRITrace tracer)
 {
     Tracers.Push(tracer);
 }