[发明专利]立即延迟跟踪器工具有效
申请号: | 201210361525.9 | 申请日: | 2012-09-21 |
公开(公告)号: | CN102999314A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | C·麦科尔;P·普赖斯;B·艾京;S·巴萨瓦 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F13/40 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 罗婷婷 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 立即 延迟 跟踪 工具 | ||
技术领域
本发明涉及跟踪引用中的事件的方法和系统。
背景技术
用户界面使得用户能够与软件应用进行交互。用户界面设备可以是通过键盘、鼠标、触摸屏显示器等来接受用户的动作或输入的图形用户界面。可以使用诸如窗口、菜单、图标、按钮、指针、框等对象来构造图形用户界面。用户可以使用这些对象来输入数据、执行命令以及一般与软件应用进行交互。
对用户动作的慢响应时间影响对软件应用的使用。响应时间应该尽可能的快。某些用户动作可能是关键的,并需要立即响应。用户动作和应用响应间的延迟可给予用户该应用软件没有瞬时地反应的感知。因此,改进用户界面的响应时间增强了用户对软件应用的整体体验。
发明内容
提供本发明内容以便以简化形式介绍将在以下具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
用户通过严重依赖于可能需要立即响应的用户输入或用户动作的用户界面与诸如集成开发环境(IDE)等应用进行交互。这些用户动作经常由管理IDE的用户界面的用户界面(UI)线程来处理。对用户动作的响应中的延迟影响用户对应用的体验。立即延迟跟踪器工具跟踪UI线程对在返回响应时具有超过预期响应时间的延迟的用户动作的处理。
立即延迟跟踪器工具获取用户定义的指示感兴趣的事件、每一事件的延迟阈值和每一事件的跟踪长度的设置文件。立即延迟跟踪器工具监听超过延迟阈值的事件的发生,并随后记录系统中运行的所有进程和线程的控制流的系统范围跟踪达由跟踪长度定义的时间长度。立即延迟跟踪器工具在记录系统范围跟踪之前等待第一次发生超过延迟阈值的事件,该事件可引起在后用户动作经历相同的延迟。通过这种方式,被记录的数据的量被最小化。随后可过滤并分析所记录的数据以得到延迟的源。
通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应该理解,前面的概括说明和下面的详细描述只是说明性的,不会对所要求保护的各方面形成限制。
附图简述
图1示出了用于跟踪用户动作的立即延迟的示例性系统。
图2是示出了对具有超过延迟阈值的流逝时间的键盘输入的跟踪的流程图。
图3是示出用于跟踪立即延迟的第一示例性方法的流程图。
图4A-4B是示出用于跟踪立即延迟的第二示例性方法的流程图。
图5是示出操作环境的框图。
图6是示出示例性计算设备的框图。
图7是示出示例性服务器的框图。
具体实施方式
各个实施例涉及用于跟踪响应于要求立即响应的用户输入的延迟的机制。在一个或多个实施例中,可以向提供使用户能够构建、测试和/或执行软件应用的工具和服务的集成开发环境输入用户输入。用户通过严重依赖于可要求立即响应的用户输入和动作的用户界面与IDE进行交互。立即延迟跟踪器工具是跟踪在这样的用户动作的响应时间中的延迟,使得该延迟的源可被标识出并被补救的机制。
在一个或多个实施例中,立即延迟跟踪器工具可跟踪显示从键盘键入的字符的延迟或在显示器上打开菜单的延迟。立即用户动作可以是键盘敲击或对用户输入的菜单选项的点击。存在处理这些事件时应该瞬时响应的期望。
立即用户动作经常由管理IDE用户界面的UI线程来处理。用户界面事件被表示成被存储在消息队列中直到被UI线程处理的消息。UI线程可以被实现为从消息队列检索消息并据此处理它们的消息泵或循环。UI线程的目标是持续从消息队列中检索消息,该消息在本领域中又被称为抽取消息。通过这种方式,触发这些消息的动作被响应,以由此快速改进用户动作的响应时间。
立即延迟跟踪器工具获取指示感兴趣的事件、延迟阈值和跟踪长度的设置文件。感兴趣的事件可以是UI线程处理的用户动作,诸如键盘敲击、鼠标点击、打开菜单等。延迟阈值是表示用户可容许的最大延迟的时间单位。跟踪长度是表示在应用超过了延迟阈值后跟踪该应用的时间量的时间单位。
立即用户动作的响应时间可以是非常快速的,并可花少至50毫秒。由于立即用户动作的快速响应时间,立即延迟跟踪器工具不得不以不明显增加立即用户动作的响应时间的方式来工作。因而,立即延迟跟踪器工具在记录系统范围跟踪前等待超过阈值的事件的发生。系统范围跟踪可包括进程中的调用栈和/或在跟踪期间运行的线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210361525.9/2.html,转载请声明来源钻瓜专利网。