このsystem.threading.threadpoolwaitcallback.performwaitcallback()とothreメソッドは何をしますか?

私は.net mvc3アプリケーションをデバッグしています。それから、コールスタックと呼ばれる出力ウィンドウを開きました。私は多くのものを見ました...私はグーグルで「msdned」し、答えはありませんでした。いくつかの方法で何ができるのか教えてください。どうもありがとうございます!リストされたすべての方法を私に教える必要はありませんが、あなたが考える重要なものはいくつか教えてください。

ps: my background knowledge: I read the book "CLR via C#" once ,not fully understand it yet .I know a little about memory manage ,GC,APP domain etc.Just the basic ,you know :)

EDIT 1 the following is pasted from the stack ,so ,you may please explain them from the bottom to top ,that's more strait forward :)

EDIT 2 I know it's a 'big' question ,you may just tell me which blog ,webpage or book etc I should read to get more understanding :) thank you :)

System.Web.Mvc.Controller.RedirectToAction(string actionName, string controllerName, object routeValues) 
System.Web.Mvc.ActionMethodDispatcher.Execute(System.Web.Mvc.ControllerBase controller, object[] parameters)
System.Web.Mvc.ReflectedActionDescriptor.Execute(System.Web.Mvc.ControllerContext controllerContext,     System.Collections.Generic.IDictionary parameters)
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(System.Web.Mvc.ControllerContext controllerContext, System.Web.Mvc.ActionDescriptor actionDescriptor, System.Collections.Generic.IDictionary parameters) 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters.AnonymousMethod__12() 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(System.Web.Mvc.IActionFilter filter, System.Web.Mvc.ActionExecutingContext preContext, System.Func continuation) 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters.AnonymousMethod__14() 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(System.Web.Mvc.ControllerContext controllerContext, System.Collections.Generic.IList filters, System.Web.Mvc.ActionDescriptor actionDescriptor, System.Collections.Generic.IDictionary parameters) 
System.Web.Mvc.ControllerActionInvoker.InvokeAction(System.Web.Mvc.ControllerContext controllerContext, string actionName) 
System.Web.Mvc.Controller.ExecuteCore() 
System.Web.Mvc.ControllerBase.Execute(System.Web.Routing.RequestContext requestContext) 
System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(System.Web.Routing.RequestContext requestContext) 
System.Web.Mvc.MvcHandler.BeginProcessRequest.AnonymousMethod__5() 
System.Web.Mvc.Async.AsyncResultWrapper.MakeVoidDelegate.AnonymousMethod__0()
System.Web.Mvc.Async.AsyncResultWrapper.BeginSynchronous.AnonymousMethod__7(System.IAsyncResult _) 
System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult.End()
System.Web.Mvc.MvcHandler.EndProcessRequest.AnonymousMethod__d() 
System.Web.Mvc.SecurityUtil.GetCallInAppTrustThunk.AnonymousMethod__0(System.Action f)
System.Web.Mvc.SecurityUtil.ProcessInApplicationTrust(System.Action action) 
System.Web.Mvc.MvcHandler.EndProcessRequest(System.IAsyncResult asyncResult) 
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(System.IAsyncResult result) 
System.Web.dll!System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
System.Web.dll!System.Web.HttpApplication.ExecuteStep(System.Web.HttpApplication.IExecutionStep step, ref bool completedSynchronously) +
System.Web.dll!System.Web.HttpApplication.ApplicationStepManager.ResumeSteps(System.Exception error) System.Web.dll!System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(System.Web.HttpContext context, System.AsyncCallback cb, object extraData) +
System.Web.dll!System.Web.HttpRuntime.ProcessRequestInternal(System.Web.HttpWorkerRequest wr) +
System.Web.dll!System.Web.HttpRuntime.ProcessRequestNoDemand(System.Web.HttpWorkerRequest wr) + 
System.Web.dll!System.Web.HttpRuntime.ProcessRequest(System.Web.HttpWorkerRequest wr) + 
WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Request.Process() + 0x17b WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Host.ProcessRequest(Microsoft.VisualStudio.WebHost.Connection conn) +
WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Server.OnSocketAccept(object acceptedSocket) +  
mscorlib.dll!System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(object state) +    
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool ignoreSyncCtx) +   
mscorlib.dll!System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() + 
mscorlib.dll!System.Threading.ThreadPoolWorkQueue.Dispatch() + 
mscorlib.dll!System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() + 0x2d
1
私は同じ問題の署名を見ている。しかし、私はSystem.Data.SqlClientを使用してSQL Serverに呼び出すシンプルな.ashxページのコンテキストでそれを見ています。 Visual Studioによると、私のスタックは次のようになります。 Microsoft.VisualStudio.WebHost.Server.OnSocketAccept()System.Threading.QueueUserWorkItemCallback.WaitCallback_Cont‌ ext()System.Threading.ExecutionContext.Run()System.Threading ()System.Threading.ThreadPoolWorkQueue.Dispatch()System.Threading._ThreadPoolWaitCallback.PerformWaitCallback‌() .QueueUserWorkItemCallback.System.Threading。‌ IThreadPoolWorkItem。
追加された 著者 rdm,
さらに注意してください:私の場合、問題は管理コード内の単純な(そして間違った)再帰呼び出しでした。上記のスタックトレースは「有効」でした。問題を特定するのには役に立たないだけです。 - あなたの問題はおそらく似ていると思われます。スタックのオーバーフローが発生した場合、制御するappdomainで例外が発生することはなく、修正する必要があります。
追加された 著者 rdm,

答えはありません

0