评估需要线程临时运行。我完全无法使用Watch窗口执行评估。我正在测试MetaTraderAPI并在VS2010的即时窗口中尝试运行方法时遇到下一个错误:System.Runtime.Remoting中的mscorlib.dll中出现类型为“System.Threading.ThreadAbortException”的第一次机会异常.dll发生类型为“System.Threading.ThreadAbortException”的第一次机会异常。评估需要一个线程临时运行。使用Watch窗口执行评估。这是什么意思?会不会因为运行时版本差异(api2.0,app4.0)而发生?我相信您通过即时窗口调用的方法最终会调用Debugger.NotifyOfCrossThreadDependency。此方法仅在.NET4.0中引入,因此在使用旧版本的运行时时不会重现该问题。这篇博文详细解释了NotifyOfCrossThreadDependency,但其要点是它会导致Watch窗口显示一个刷新按钮,必须在计算发生之前按下该按钮。但是,如果您通过即时窗口进行评估,则会收到“评估需要一个临时运行的线程。使用监视窗口执行评估”错误。下面是重现此错误的示例属性:publicintCauseError{get{Debugger.NotifyOfCrossThreadDependency();返回5;我相信该错误意味着您尝试执行的方法正在生成一个线程。但是,由于程序处于中断模式,因此不会运行。为避免死锁(在无法运行的线程上永远等待的方法),VisualStudio会终止所有生成的线程。我的建议是将调用移到程序中并使用其他方法来完成。这是因为服务器在.NET2.0下运行,而客户端(通过.NETRemoting)在.NET4.0下运行。将客户端切换到.NET2.0/3.5解决了这个问题。不要删除app.config,它包含如下信息:关闭您的VS并重建您的应用程序,它会对您有所帮助。以上是C#学习教程:求值暂时需要一个线程运行。使用“监控”窗口评估和共享所有内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理会员删除。如需转载请注明出处:
