[发明专利]通过插入的代码声明来协助开发工具的方法和系统有效
申请号: | 201380025811.0 | 申请日: | 2013-05-08 |
公开(公告)号: | CN104303158B | 公开(公告)日: | 2017-11-07 |
发明(设计)人: | T·S·莱斯;A·甘地;T·H·基姆;G·B·米斯凯利;M·C·范宁;A·R·斯特兰德 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 上海专利商标事务所有限公司31100 | 代理人: | 潘明婳 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 协助 开发 工具 通过 插入 代码 声明 | ||
1.一种至少部分地由计算机实现的方法,所述方法包括:
在代码在运行时环境中执行期间,执行所述代码的声明,所述声明提供关于当在所述代码正在执行时异常出现的情况下要向调试器发送如果存在的通知的信息,其中执行所述代码的声明包括设置所述运行时环境可访问的运行时对象的性质,所述性质指示如果异常在或将在与所述声明相关联的范围中被处理则向所述调试器发送通知,并且其中所述性质不是跨不同函数调用继承的;
在执行所述代码时遇到异常;
评估当遇到异常时存在于所述运行时环境中的程序状态,评估程序状态包括搜索将处理所述异常的异常处理程序;以及
基于所述程序状态和所述信息,确定要响应于所述异常向所述调试器发送如果存在的通知。
2.如权利要求1所述的方法,其特征在于,所述性质指示如果异常在或将在所述声明的范围内打开的范围中被处理则向所述调试器发送通知。
3.如权利要求1所述的方法,其特征在于,还包括结合确定要响应于所述异常向所述调试器发送如果存在的通知,调用由所述声明所指示的回调函数,所述回调函数返回要在确定所述通知时使用的数据。
4.如权利要求1所述的方法,其特征在于,还包括如果在所述搜索期间找到具有异常处理器的栈框架,则确定所述栈框架是否指示为调试对象设置了性质,所述性质可由所述运行时环境访问,所述性质指示所述调试器是否要为由所述异常处理程序处理的异常而被调用,所述异常潜在地出现在具有所述栈框架的范围之外。
5.如权利要求1所述的方法,其特征在于,确定要响应于所述异常向所述调试器发送如果存在的通知包括确定总是向所述调试器发送所述通知,并且还包括基于所述调试器的配置数据和所述通知来确定是否经由显示器显著地指示所述异常。
6.一种在计算环境中的系统,包括:
用于执行包括声明的代码的运行时环境,所述声明指示关于如果在所述代码正在执行时遇到异常是否要向开发工具发送通知的信息,其中执行所述代码的声明包括设置所述运行时环境可访问的运行时对象的性质,所述性质指示如果异常在或将在与所述声明相关联的范围中被处理则向所述开发工具发送通知,并且其中所述性质不是跨不同函数调用继承的;
用于在可由所述声明设置的性质中编码所述信息的对象,所述性质与一范围相关联,所述性质可由所述运行时环境访问;以及
用于评估当在执行所述代码的同时遇到异常时存在于所述运行时环境中的程序状态的异常管理器,所述异常管理器还用于基于所述程序状态和所述性质确定是否要向所述开发工具发送所述通知。
7.如权利要求6所述的系统,其特征在于,所述异常管理器用于在所述程序状态中搜索处理所述异常的处理程序,所述程序状态具有栈框架,所述栈框架潜在地与具有指示是否要向所述开发工具发送通知的性质的不同对象相关联。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380025811.0/1.html,转载请声明来源钻瓜专利网。