乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 71|回复: 3

优雅地处理 ESC/取消

[复制链接]

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2018-8-20 14:32:18 | 显示全部楼层 |阅读模式
有没有简单的包裹裸露的方法。net函数来防止在函数过程中因取消而产生的错误。
看来这次尝试...当用户取消一个函数时,catch块不能捕捉到所有可能出错的地方,或者错误可能没有大到足以允许它们被优雅地处理。
即使这不是一个快速的解决方案(当你的项目是100M时,这有点不可能)
无论如何,我正试图总结4年的开发(这很糟糕,我准备结束它),我遇到了这个问题,有时会抛出错误,有时不会。

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2018-8-20 20:22:48 | 显示全部楼层
在重新阅读您的帖子后,如果是由于某些API没有获得正确的输入而导致的错误,则会出现更大的问题(即错误/输入检查/逻辑错误)。如果您将入口点方法包装在一个try-catch中,您至少会捕获任何冒泡的异常,并且您可以优雅地处理它们……某种程度上
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2018-8-20 20:47:15 | 显示全部楼层
我能轻易复制的最大的罪犯是在我的夹具中。
在程序的一部分,用户选择具有数百个,有时数千个数据点的数据文件。这些点被读入一个数据类,随后被解析、排序并作为属性插入。每个文件可能只有一个节点,也可能有数百个节点。如果用户在夹具过程中取消动作,90%的情况下都会产生错误,并且通常是空参考。
单步调试代码提供了一些线索,但这是一项艰巨的任务,尤其是考虑到在非托管代码中出现了几处我无法调试的中断(您知道像Autodesk库和一些windows导入这样的东西)。对于它的价值,当它是一个简单的WinForm应用程序时,我没有这个问题,但现在它从一个调色板运行,这已经发生了。我怀疑这与这样一个事实有关,即顶级控件只有在AutoCAD关闭时才被释放,结果可能是内存泄漏,或者可能是编译器链接了一个我认为不应该链接的变量?我不知道我会不会找到罪魁祸首,因为我不想只是在这个问题上贴个创可贴。我更喜欢解决问题。
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2018-8-21 00:13:43 | 显示全部楼层
啊,好的,它在吉格舞里。您应该能够处理夹具的移动/拖动等适当状态,并捕获/处理当前状态或异常。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-4 08:48 , Processed in 0.150545 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表