“无法计算表达式...”错误

2023-12-22

在 Visual Studio 2010 beta 2 中调试应用程序时,突然出现以下错误。

“无法评估表达式,因为 线程停止在某个点 垃圾收集是不可能的, 可能是因为代码是 优化”

监视窗口中的几乎每个属性或字段都会显示此消息。有谁知道发生了什么事吗?以及如何摆脱它?

项目属性构建选项卡上的“优化代码”复选框已关闭。


这里有一个link http://www.mail-archive.com/advanced-dotnet@discuss.develop.com/msg12883.html来讨论这个问题。显然,当函数参数是结构体时,调用该函数所需的堆栈总内存超过了 Visual Studio 调试器的一些神奇数字。

Quote

我认为所有对象的“引用”的总大小 struct 和方法上的附加参数大于 256 字节。

我从 MS 得到关于这个问题的回复:

“...一般来说,当参数的总大小传递给 被调用函数大于256字节,JIT将调用调用函数 部分可中断。在部分可中断的代码中,并非每个 代码中的位置是 GC 安全点。因此,可能不安全 评估某些位置的表达。当这种情况发生时,你会得到[ 错误信息]。”

所以看来,即使这些字段是引用,所有它们的总和 超过256字节limit对于调试器。

我也有这个link http://www.opentk.com/node/1460来自 OpenTK 框架讨论。

Quote

我做了一些挖掘,看来问题源于数学数据结构(例如矩阵或向量)的类型为“struct”。 C# 对值类型有一个限制,即当作为参数传递给函数时,它们不应超过 256 字节的数据,除非它们通过引用传递。不遵守这一点会在调试模式下产生不间断的代码。如果将上述数据结构从结构体转换为类,问题就应该得到解决。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“无法计算表达式...”错误 的相关文章

随机推荐

  • 如何确定上下文无关语法是否描述了常规语言?

    给定任意上下文无关语法 我如何检查它是否描述了常规语言 我不是在寻找考试 技巧 我正在寻找一种可以编写代码的万无一失的机械测试 如果有帮助 这里是我可能会收到的 CFG 作为输入的示例 具体来说 请注意 答案一定比仅仅寻找左递归或右递归复杂
  • 如何在另一个函数中使用带有参数的函数的返回值

    所有这些函数都位于 int main 之外 int func1 int x int v1 6 x return v1 the input argument will be 2 so v1 12 int func2 int v2 func1
  • $_POST[] 在 php 中不工作

    我已经开始学习PHP了 设法设置东西 我正在使用 php 版本 5 3 13 我正在尝试将一些信息发布到 html 表单并在 php 文件中接收它 为此 我使用 Post 变量 并且 php 文件的输出为空 下面是html代码
  • 如何记录Tomcat 7 JDBC连接池、连接创建

    尽管我们使用的是 Tomcat 7 JDBC 连接池 但我正在尝试调试似乎打开和关闭的数据库连接数量过多 当对数据源调用 getConnection 导致打开新连接而不是从池中借用现有连接时 如何记录 我知道有两种查看 Tomcat DB
  • 易失性读取和非易失性字段

    看完之后这个问题 https stackoverflow com questions 17108541 happens before relationships with volatile fields and synchronized b
  • 如何获取NSString的子字符串?

    如果我想从 NSString 获取值 value hello World value 我应该用什么 我想要的返回值是 hello World 选项1 NSString haystack value hello World value NSS
  • 使用 System.Text.Json 获取嵌套属性

    我正在与System Text Json在我的项目中 因为我正在处理大文件 所以也决定使用它来处理 GraphQL 响应 由于 GraphQL 的性质 有时我会得到高度嵌套的响应 这些响应不固定 并且映射到类没有意义 我通常需要检查响应的一
  • 在多核服务器中将socket.io与集群一起使用的好方法?

    我创建了一个 Nodejs 应用程序 它在单核中运行良好 该应用程序使用 socket io 进行轻量且快速的通信 现在 我想垂直扩展我的应用程序 使其能够使用以下命令在多核系统上运行clusterNode js 中的模块 我的应用程序中的
  • 如何在 Web 应用程序中启用 Eclipse 调试功能?

    我正在使用 Eclipse IDE 和 PyDev 插件为我的 Python Web 应用程序使用 Django 框架 如何使用调试功能 UPDATES1特别是使用http pydev org updates http pydev org
  • Android xsl 转换空指针,但在桌面上工作

    我正在 Android 上开发 xslt users xml 文件
  • 如何通过用均值替换来处理 R 中的缺失值? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个看起来像这样的数据框 row1 key1 10 row2 key1 12 row3 key1 NA row4 key2 2 r
  • 根据列表列连接两个 pandas 数据框

    I have 2 个数据框包含列表的列 我想join他们基于2 共同价值观在名单上 例子 ColumnA ColumnB ColumnA ColumnB id1 a b c id3 a b c x y z id2 a d e 在这种情况下我
  • 如何将 MSSQL PRINT 输出存储到变量

    在 MS SQL 2008 R2 上 我希望能够将消息输出捕获到变量中 我需要在许多数据库上运行脚本 捕获消息输出 来自 print 或 raiserror 的消息 并将其记录到表中 我需要从存储过程内部执行此操作 对于这个脚本 Decla
  • 对于 Perl 开发的理想 Vim 配置,您有何建议?

    有很多关于如何配置的线程Vim GVim http www vim org 用于 Perl 开发在 PerlMonks org 上 http www google com search q vimrc site 3Aperlmonks or
  • 进行同步 JavaScript 调用的技巧 [重复]

    这个问题在这里已经有答案了 JavaScript 在大多数现代 API 中使用异步调用来处理磁盘 IO 和网络等 慢 事物 我意识到这样做的目的是什么 但是在某些情况下确实需要进行同步调用 例如 我有一段无法重写的 JavaScript 代
  • 输入类型=“按钮”的 onClick 函数不起作用

    我有这段代码 单击 获取更多字段 按钮将创建整个 div 的副本并创建字段 但点击按钮后什么也没有发生 所有其他按钮都工作正常 不知道我做错了什么 提前感谢您的帮助 div style display none div
  • 使用 Jersey 1.x 进行自定义注释注入

    我使用的是球衣 1 9 1 我有如下休息方法 授权标头包含编码凭据 例如用户名 和密码 并在方法中解析并映射本地值 PUT Path SystemConstants REST MESSAGE SENDSMS Consumes MediaTy
  • 使用 MSAL 对 Azure 静态 Web 应用中的函数进行授权

    我正在尝试使用 Azure AD 和 MSAL 对使用 Azure 静态 Web 应用创建和公开的 Azure 函数进行身份验证和授权 如果我将应用配置为使用较旧的 AAD v1 流 但不使用 MSAL 则用户可以成功访问 API 设置 用
  • 如何用Delphi计算当前日期的日出和日落时间

    我需要在给定特定纬度和经度的情况下并使用 Delphi 我正在使用 XE2 确定当天的日出和日落时间 当地时间 我找到了本文 http en wikipedia org wiki Sunrise equation并使用了系统工具库 http
  • “无法计算表达式...”错误

    在 Visual Studio 2010 beta 2 中调试应用程序时 突然出现以下错误 无法评估表达式 因为 线程停止在某个点 垃圾收集是不可能的 可能是因为代码是 优化 监视窗口中的几乎每个属性或字段都会显示此消息 有谁知道发生了什么