CN1645331A - 隐式可配置消息队列基用户接口自动同步的系统和方法 - Google Patents

隐式可配置消息队列基用户接口自动同步的系统和方法 Download PDF

Info

Publication number
CN1645331A
CN1645331A CNA2004100818844A CN200410081884A CN1645331A CN 1645331 A CN1645331 A CN 1645331A CN A2004100818844 A CNA2004100818844 A CN A2004100818844A CN 200410081884 A CN200410081884 A CN 200410081884A CN 1645331 A CN1645331 A CN 1645331A
Authority
CN
China
Prior art keywords
window
user interface
choosing
message queue
thread
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2004100818844A
Other languages
English (en)
Other versions
CN100432938C (zh
Inventor
J·D·多吉特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1645331A publication Critical patent/CN1645331A/zh
Application granted granted Critical
Publication of CN100432938C publication Critical patent/CN100432938C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种将用户接口自动化编码与计算机程序编码隐式同步的系统和方法。与相应于用户接口的窗口的消息队列相勾连的同步API被调用。当相应于窗口和其它系统活动的线程指示消息队列为空时,该同步API返回。空的消息队列指示用户接口为空闲,自动化编码可处理其下一动作。

Description

隐式可配置消息队列基用户接口自动同步的系统和方法
背景技术
关联于计算机程序的反复纠错过程是交付符合客户期望的产品的一个重要部分。开发了各种测试过程来进行计算机程序测试。某些测试已经被自动化,以允许对计算机程序的各种部分进行重复性自动的测试。
向其应用了自动化过程的计算机程序的一部分包括用户接口(UI)功能性。UI测试的自动化编码被提供,用来对计算机程序进行UI选中方面的自动测试。
发明内容
本发明涉及自动化编码与计算机程序状态的隐式同步。一般而言,为了使自动化在计算机程序用户接口的测试中可运行,自动化编码的作者会需要写同步编码。本发明去除了这种显式同步编码的必需性。根据本发明,自动化编码是事件驱动的,检测涉及程序UI的动作何时完成。因此,自动化编码与计算机程序隐式同步,且可确认关联于计算机程序UI的每个动作何时完成。换言之,本发明引入了一种试探法(heuristic),该试探法断言自动化的任一特定步骤直到系统已准备好进行下一步骤(即,计算机程序UI准备好进行下一自动化步骤)才算完成。与相应于用户接口的窗口的消息队列相勾连的同步API被调用。当相应于窗口和其它系统活动的线程指示消息队列为空时,该同步API返回。空的消息队列指示用户接口为空闲,且自动化编码可处理其下一动作了。
附图说明
图1所示是可用于本发明一示例性实施方式的示例性计算设备。
图2示出的是可用于本发明一示例性实施方式的示例性移动设备。
图3是图示根据本发明在计算设备桌面上的典型UI输出的块图。
图4示出了用于根据本发明的隐式UI同步过程的逻辑流程图。
具体实施方式
以下将参照附图对本发明作更全面地描述,其中附图形成了本说明书的一部分,而且作为说明示出了实践本发明的特定示例性实施方式。然而,本发明可以各种不同形式来具体实施,且不应当被解释为被限制于在此陈述的实施方式;相反,提供这些实施方式是使得本发明更全面和完整,并向本领域技术人员全面地传递本发明的范围。其中,本发明可落实为方法或设备。因此,本发明在形式上可取完全为硬件的实施方式、完全为软件的实施方式、或组合硬件和软件方面的实施方式。因此,以下详细说明不应视作含限制性意味。
说明性操作环境
图1显示了可包括在用来实现本发明的系统100中的示例性计算设备。计算设备100示出了可应用于本发明的一般操作环境。在很基本的配置中,计算设备100通常包括至少一个处理单元102和系统存储器104。处理单元102包括能编译可执行二进位指令的现有物理处理器、设计中处理器、一起动作的多处理器、虚拟处理器、及其它设备或软件程序。取决于确切的计算设备配置和类型,系统存储器104可以是易失的(诸如RAM)、非易失的(诸如ROM、闪存等)或两者的组合。系统存储器104经常包括操作系统105、一个或单个程序模块106、且可能包括程序数据107。该基本配置如图1虚线108中那些组件所示。
计算设备100还可有附加特征或功能性。例如,计算设备100还可具有附加数据存储设备(可移动和/或不可移动的),诸如磁盘、光盘、或磁带。这种附加存储器由图1中可移动存储器109和不可移动存储器110所示。计算机存储介质可包括以存储诸如计算机可读指令、数据结构、程序模块、和其它数据的信息的方法或技术实现的易失和非易失、可移动和不可移动介质。系统存储器104、可移动存储器109和不可移动存储器110都是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字化视频光盘(DVD)或其它光学存储技术、磁卡、磁带、磁盘存储或其它磁性存储设备、或任何其它可用于存储所需信息并可由计算设备100访问的介质。任何这种计算机存储介质都可是计算设备100的一部分。计算设备100可有输入设备112,诸如键盘、鼠标、笔、输入笔、语音输入设备、触摸输入设备等等。还可包括诸如显示器、扬声器、打印机等等的输出设备114。所有这些设备都为本领域所知,在此无需赘述。
计算设备100还可包含允许设备与其它网络计算设备118诸如通过网络进行通信的通信连接116。通信连接116是通信介质的示例。通信介质通常包括诸如载波或其它传输机制的调制数据信号中的计算机可读指令、数据结构、程序模块、或其它数据,且包括任何信息输送介质。术语“调制数据信号”意指用将信息编码成信号的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有线网络或直线连接的有线介质,和诸如声学、射频、红外线和其它无线介质的无线介质。在此所用的术语计算机可读介质包括计算机存储介质和通信介质。
图2显示了基本用于本发明中计算设备的可选操作环境。在本发明的一实施方式中,移动设备200被集成于一计算设备,诸如集成式个人数字助理(PDA)和无线电话。
在该实施方式中,移动设备200有处理器260、存储器262、显示器228和键盘232。存储器262一般包括易失存储器(例如RAM)和非易失存储器(例如ROM、闪存等等)。移动设备200具有驻留于存储器262中并在处理器260上执行的操作系统264。键盘232可有按钮式数字拨号盘(诸如典型电话上的)、多键键盘(诸如常规键盘)、或鉴于有触摸屏或输入笔而可能不会被包括在移动设备中。显示器228可以是液晶显示器或通常用于移动计算设备中的任何其它类型显示器。显示器228可以是触摸敏感式的,且因而还可作为输入设备。
一个或多个应用程序266被载入存储器262并在操作系统264中运行。应用程序的示例包括电话拨号程序、e-mail程序、调度程序、个人信息管理(PIM)程序、字处理程序、制表程序、因特网浏览程序等等。移动设备200在存储器262中还包括非易失存储器268。非易失存储器268可用来存储在移动设备200关机时不应当丢失的永久信息。应用266可被使用并在存储器268中存储信息,诸如e-mail应用中的e-mail或其它消息、PIM使用的联系信息、调度程序使用的约会信息、字处理应用使用的文档等等。同步应用也驻留于移动设备并被编程为与驻留于主计算机上的相应同步应用交互,以使存储在存储器268中的信息与存储在主计算机上的相应信息同步。
移动设备200有可被实现为一个或多个电池的电源270。电源270还可包括外用电源,诸如AC(交流电)适配器或对电池进行补充或充电的有源接驳支架。
移动设备200还被显示有两种外部通告机制:LED 240和音频接口274。这些设备可与电源270直接耦合,从而当其被激活时,它们按通告机制的规定保持接通一段时间,即使处理器或其它组件为节约电源而关闭。LED 240可被编程为无限期地保持接通,直到用户采取行动来指示设备的通电状态。音频接口274被用来向用户提供音频输出,并从用户处接收音频输入。例如,音频接口274可与提供音频输出的扬声器和接收音频输入的话筒耦合,以便于进行电话通话。
移动设备200还包括执行发送和接收无线电频率通信功能的无线收发装置272。无线收发装置272有助于通过通信运营商或服务提供商在移动设备200和外部世界之间建立无线连接。与无线收发装置272之间的收发传输在操作系统264的控制之下进行。换言之,由无线收发装置272接收的通信可通过操作系统264传播给应用程序266,反之亦然。
无线收发装置272使移动设备200可与其它计算设备进行通信,比如通过网络。无线收发装置272是通信媒质的一个示例。通信媒质通常表现为计算机可读指令、数据结构、程序模块、或诸如载波或其它传输机制的调制数据信号形式的其它数据,且包括任何信息输送介质。术语“调制数据信号”意指用将信息编码成信号的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有线网络或直线连接的有线介质,和诸如声学、射频、红外线和其它无线介质的无线介质。在此所用的术语计算机可读介质包括计算机存储介质和通信介质。
基于消息队列的UI自动化同步
传统UI测试自动化编码的一个问题是驱动逻辑的执行与被测试的基于UI的目标不同步。这通常是仅有的选项,因为用来驱动用户接口的一般方法自身就是不同步的。结果是这种自动化的作者必须显式地提供编码,以将自动化与应用的状态同步。即,执行一个动作,等待任意时间段或等待某些动作已完成的外部信号,然后进行下一动作。某些显式同步方案涉及把自动化置于循环达之中一指定时间段,以保证计算机程序的状态达到指定条件。编写该额外同步编码是晦涩难解的,且维护成本必定提高,因为用户将不得不永远围绕性能问题调整工作,比如当没有外部信号时。另一个问题是该显式同步通常不是最优化的,使程序准备就绪滞后了相当长的时间段(常被大大加长以改善可靠性)。这使得性能测试的自动化编码很难编写。
隐式同步对第一个问题的处理是去除了作者写编码用于解决同步化的需要,因为它始终“知道”动作何时“完成”。编码由此反映应特定意愿,而不会被等待执行下一动作的适当时间的后勤(logistics)所沾污。
通过检测动作在最优时刻完成,基于消息队列的同步解决了第二个问题,有效地变成了事件驱动。
本发明提供了一个在设定延迟被写入自动化过程时不可用的性能测试的级别。
图3是根据本发明图示在计算设备桌面上的典型UI输出300的块图。桌面302包括示例性窗口304、306和308。每个窗口(例如304)可对应于存储在相应计算设备中或在其它位置并由计算设备显示的不同程序。在另一实施方式中,程序可提供不以桌面形式显示、而是全屏输出或另一种形式输出的UI输出。
产生一特定窗口(例如304)的显示与发送给在特定窗口中描绘该显示的计算设备系统的消息相对应。作为应用程序接口(API)调用的结果而提供给系统的消息对应于UI事件。API调用由程序提供以触发UI输出。利用API调用机制在窗口中显示UI输出的过程是一个非同步过程。因此,被提供用来仿真与程序的UI交互的自动化编码集要面对追踪非同步过程作测试的困难。
每个窗口(例如304)由运行在计算设备上的线程管理。每个线程可管理一个以上窗口。每个线程在对应于该线程的窗口循环使用诸消息。在任意给定时刻,分别对应于多个窗口的多个线程可运行在计算设备上。当检测到影响特定窗口的UI输出的用户输入时,系统处理该窗口的信息以实现显示中的必要改变。每个线程都有对应于当前由该线程处理中的消息的相应消息队列。
本发明通过监视每个线程的消息队列,把自动化过程注入或插入到向窗口提供信息的过程中。因此,当把作为特定信息的结果的更新或改变显示的过程完成时,该事件的完成被自动化过程获知。当相关线程的消息队列为空时,自动化过程知道由自动化输入导致的动作已经被处理。
在一实施方式中,一些线程被标识为重要线程(例如任务栏的壳线程、对应于软件输入面板的线程、当前显示的窗口及其它),使得这些线程和自动化过程间的同步被提供,而不管所关注的程序是什么。换言之,特定程序的UI输出可由特定线程进行处理。不是仅仅监控该特定线程的消息队列,而是被视为重要线程的其它线程消息队列也被监控。当每个被监控线程的消息队列为空时,过程知道自动化输入导致的动作已经被执行。
图4示出了根据本发明用于隐式UI同步的过程的逻辑流程图。在实现同步过程的API已经被自动化过程调用后,过程400在进入块402上输进。在一实施方式中,被调用API被称为WaitForForegroundIdleEx(等待前景空闲)。被调用的同步API使用一种试探法,其监控具有可见窗口的线程的消息队列,以及某些更高级轮廓外壳(higher profile shell)和系统动作的线程。处理在块404继续进行。
在块404,部分被选中的显示窗口由同步API分成子类。在一实施方式中,同步API具有勾连特定窗口的内部C++类,使得该窗口被分成子类。将窗口分成子类涉及用对应于自动化过程的窗口过程来替换特定窗口的窗口过程。其结果是,当窗口显示时,调用的是对应于自动化过程的窗口过程,而不是程序编码中的原始窗口过程。在另一实施方式中,动态链接库(DLL)被载入应用的过程空间,使得该应用提供(host)勾连编码。然后,该窗口过程可通过DLL引用勾连编码来实现。处理在块406继续进行。
在块406,为根据同步API被分成子类的窗口设立定时器。在另一实施方式中,还为更高级轮廓外壳和系统活动的线程设立定时器。定时器是消息队列的一个特征,其可被配置为等待一定时间段,并当该时间过去后提供一通告。在一实施方式中,使用了定时为零的定时器,使得定时器的特定特征被发挥。当使用的时间段为零时,定时器的一个属性被充分利用,其中当消息队列为空时定时器引发。因此,当接收到定时器已引发的定时器通告时,自动化过程知道该消息队列为空,只是暂时地。过程继续进行到块408。
在判定块408,要确定是否与一线程相关联的特定定时器已引发。如果该特定定时器未引发,则过程回到块408的起点,并继续等待定时器引发。如果特定定时器已经引发,则与该线程相关联的消息队列为空且处理在块410继续进行。
在块410,当信息进入到相关线程的消息队列之一时,提供通告的API被调用。在一实施方式中,该等待API被称为MsgWaitForMultipleObjects API(等待多对象信息API)。等待API被调用后,处理在判定块412继续进行。
在判定块412,要确定是否每一个相关线程都在等待消息。当每个相关线程依赖于(wait on)对等待API的调用时,则每个相关线程都在等待消息。如果所有相关线程都不依赖于对等待API的调用,则处理返回判定块408以确定是否所有相关定时器都已经引发。然而,如果所有相关线程都在依赖于对等待API的调用,则处理在块414继续进行,其中同步过程400提供返回给自动化过程。
在另一实施方式中,同步API可被配置为跳过等待API调用,且简单地确保消息在所有线程中被立即处理。同步API还可被设置,以确保消息队列在N毫秒的持续时间段内都是空闲的,而不是即时返回。
以上说明书、示例和数据提供了本发明的产品和应用的完整描述,。因为可产生本发明的许多实施方式而不背离本发明的精神和范围,本发明体现于所附权利要求书中。

Claims (22)

1.一种用于用户接口自动化同步的计算机实现方法,其特征在于,它包括:
把所选中的显示在所述用户接口上的窗口分成子类,其中每个所选中窗口对应于一线程的消息队列;
设置对应于每个所述选中窗口的定时器;
确定是否与所述选中的窗口中的一个相关联的特定计时器已经引发;以及
确定是否所述线程的消息队列为空,使得当所述消息队列为空时,所述用户接口自动化继续到下一动作。
2.如权利要求1所述的计算机实现方法,其特征在于,还包括:
调用一同步应用程序接口以启动把所述选中窗口分成子类。
3.如权利要求1所述的计算机实现方法,其特征在于,还包括:
调用一等待应用程序接口以确定是否所述线程的所述消息队列为空。
4.如权利要求3所述的计算机实现方法,其特征在于,当所述用户接口自动化在依赖于对所述等待应用程序接口的调用时,所述线程的消息队列被指示为空。
5.如权利要求1所述的计算机实现方法,其特征在于,将一选中窗口分成子类对应于用用户接口自动化编码替换对应于所述选中窗口的窗口过程编码。
6.如权利要求1所述的计算机实现方法,其特征在于,对应于每个所述选中窗口的所述定时器被设置为零。
7.如权利要求1所述的计算机实现方法,其特征在于,对一关联于所述选中窗口之一的特定定时器已引发的确定指示对应于所述选中窗口之一的消息队列为空。
8.如权利要求1所述的计算机实现方法,其特征在于,还包括:
设置对应于系统活动的定时器。
9.如权利要求8所述的计算机实现方法,其特征在于,还包括:在所述用户接口自动化进行到下一动作之前,另外确定对应于所述系统活动的线程的消息队列是否为空。
10.一种包括计算机可执行指令的计算机可读介质,所述指令用于提供用户接口自动化同步,其特征在于包括:
将选中的显示在所述用户接口上的窗口勾连到用户接口以对应于用户接口自动化编码,其中每个所述选中窗口对应于一线程的消息队列;
设置对应于每个所述选中窗口的定时器;
确定是否关联于所述选中窗口之一的特定定时器已经引发;以及
确定是否所述线程的消息队列为空,使得当所述消息队列为空时,所述用户接口自动化继续到下一动作。
11.如权利要求10所述的计算机可读介质,其特征在于,还包括调用一同步应用程序接口以启动把所述选中窗口分成子类。
12.如权利要求10所述的计算机可读介质,其特征在于,勾连选中窗口还包括将选中窗口分成子类,使得对应于所述选中窗口的窗口过程编码被用户接口自动化编码所替换。
13.如权利要求10所述的计算机可读介质,其特征在于,勾连选中窗口还包括把一动态链接库附加到对应于所述选中窗口的窗口过程编码上。
14.如权利要求10所述的计算机可读介质,其特征在于,还包括调用一等待应用程序接口以确定是否所述线程的消息队列为空。
15.如权利要求14所述的计算机可读介质,其特征在于,当所述用户接口自动化在依赖于对所述等待应用程序接口的调用时,所述线程的消息队列被指示为空。
16.如权利要求14所述的计算机可读介质,其特征在于,确定了关联于所述选中窗口之一的特定定时器已引发即表明对应于所述选中窗口之一的消息队列为空。
17.一种使用户接口自动化同步的系统,其特征在于,它包括:
一应用,其包括一应用程序接口,它被配置成:
将选中的显示在所述用户接口上的窗口勾连到用户接口以对应于用户接口自动化编码,其中每个所述选中窗口相应于一线程的消息队列;
设置对应于每个所述选中窗口的定时器;
确定是否关联于所述选中窗口之一的特定定时器已经引发;以及
确定是否所述线程的消息队列为空,使得当所述消息队列为空时,所述用户接口自动化继续到下一动作。
18.如权利要求17所述的系统,其特征在于,所述应用程序接口还被配置成调用一等待应用程序接口以确定是否所述线程的消息队列为空。
19.如权利要求17所述的系统,其特征在于,当所述用户接口自动化在依赖于对所述等待应用程序接口的调用时,所述线程的消息队列被指示为空。
20.如权利要求17所述的系统,其特征在于,所述应用程序接口还被配置成设置对应于每个所述选中窗口的所述定时器为零。
21.如权利要求17所述的系统,其特征在于,所述应用程序接口还被配置成设置对应于系统活动的定时器。
22.如权利要求17所述的系统,其特征在于,所述应用程序接口还被配置成在所述用户接口自动化进行到下一动作之前,另外确定对应于所述系统活动的线程的消息队列是否为空。
CNB2004100818844A 2004-01-02 2004-12-31 隐式可配置消息队列基用户接口自动同步的系统和方法 Expired - Fee Related CN100432938C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/751,336 US20050149930A1 (en) 2004-01-02 2004-01-02 System and method for implicit configurable message-queue-based user interface automation synchronization
US10/751,336 2004-01-02

Publications (2)

Publication Number Publication Date
CN1645331A true CN1645331A (zh) 2005-07-27
CN100432938C CN100432938C (zh) 2008-11-12

Family

ID=34620646

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100818844A Expired - Fee Related CN100432938C (zh) 2004-01-02 2004-12-31 隐式可配置消息队列基用户接口自动同步的系统和方法

Country Status (5)

Country Link
US (1) US20050149930A1 (zh)
EP (1) EP1555612A3 (zh)
JP (1) JP2005228301A (zh)
KR (1) KR20050071377A (zh)
CN (1) CN100432938C (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847107A (zh) * 2010-03-30 2010-09-29 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
CN101923382B (zh) * 2009-06-16 2013-01-16 联想(北京)有限公司 一种计算机系统的节能方法及计算机系统
CN104423930A (zh) * 2013-08-19 2015-03-18 联想(北京)有限公司 信息处理的方法和装置
CN106933589A (zh) * 2017-03-13 2017-07-07 车智互联(北京)科技有限公司 一种基于配置的消息队列组件及其集成的方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8205098B2 (en) * 2008-02-25 2012-06-19 Microsoft Corporation Secure and usable protection of a roamable credentials store
WO2015167474A1 (en) * 2014-04-29 2015-11-05 Hewlett-Packard Development Company, Lp Relating user action flows by storing relationships between threads and objects
WO2015167472A1 (en) * 2014-04-29 2015-11-05 Hewlett-Packard Development Company, L.P. Classifying application protocol interfaces (apis) as affecting user experience
US9946635B2 (en) 2015-09-29 2018-04-17 International Business Machines Corporation Synchronizing multi-system program instruction sequences
CN107479982B (zh) * 2017-07-03 2020-01-31 福建网龙计算机网络信息技术有限公司 一种数据同步的方法及终端

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600789A (en) * 1992-11-19 1997-02-04 Segue Software, Inc. Automated GUI interface testing
US5664190A (en) * 1994-01-21 1997-09-02 International Business Machines Corp. System and method for enabling an event driven interface to a procedural program
US5504898A (en) * 1994-06-20 1996-04-02 Candle Distributed Solutions, Inc. Threaded environment for AS/400
US6611878B2 (en) * 1996-11-08 2003-08-26 International Business Machines Corporation Method and apparatus for software technology injection for operating systems which assign separate process address spaces
US20020046230A1 (en) * 1998-04-29 2002-04-18 Daniel J. Dieterich Method for scheduling thread execution on a limited number of operating system threads
JPH11250022A (ja) * 1998-03-05 1999-09-17 Nec Corp 分散情報処理装置と分散情報処理方法及び分散情報処理プログラムを記録した記録媒体
US6604150B1 (en) * 1999-02-06 2003-08-05 International Business Machines Corporation Integration of GUI application with external application extensions
EP1221089B1 (en) * 1999-08-23 2005-12-14 Sentillion, Inc. Application launchpad
US6671875B1 (en) * 2000-09-21 2003-12-30 International Business Machines Corporation Manipulation of an object-oriented user interface process to provide rollback of object-oriented scripts from a procedural business logic debugger
US7210105B2 (en) * 2001-03-02 2007-04-24 National Instruments Corporation System and method for synchronizing software execution
US20030050834A1 (en) * 2001-09-07 2003-03-13 Sergio Caplan System and method for dynamic customizable interactive portal active during select computer time
US7047533B2 (en) * 2001-09-10 2006-05-16 Hewlett-Packard Development Company, L.P. Wait utility and method
US20050081206A1 (en) * 2003-10-14 2005-04-14 Armstrong Douglas R. Methods and apparatus for profiling threaded programs

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923382B (zh) * 2009-06-16 2013-01-16 联想(北京)有限公司 一种计算机系统的节能方法及计算机系统
CN101847107A (zh) * 2010-03-30 2010-09-29 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
CN101847107B (zh) * 2010-03-30 2012-07-04 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
CN104423930A (zh) * 2013-08-19 2015-03-18 联想(北京)有限公司 信息处理的方法和装置
CN104423930B (zh) * 2013-08-19 2017-12-26 联想(北京)有限公司 信息处理的方法和装置
CN106933589A (zh) * 2017-03-13 2017-07-07 车智互联(北京)科技有限公司 一种基于配置的消息队列组件及其集成的方法
CN106933589B (zh) * 2017-03-13 2020-07-28 车智互联(北京)科技有限公司 一种基于配置的消息队列组件及其集成的方法

Also Published As

Publication number Publication date
EP1555612A2 (en) 2005-07-20
US20050149930A1 (en) 2005-07-07
JP2005228301A (ja) 2005-08-25
EP1555612A3 (en) 2007-09-05
CN100432938C (zh) 2008-11-12
KR20050071377A (ko) 2005-07-07

Similar Documents

Publication Publication Date Title
CN100456251C (zh) 一种涉及处理器间中断的方法、处理器和系统
US6212578B1 (en) Method and apparatus for managing dependencies in a distributed computing environment for ensuring the safety of remote procedure calls
US8572578B2 (en) Script debugging
US8650577B2 (en) Mobile terminal and controlling method thereof
CN104969165A (zh) 基于手势的时间输入
WO2001077822A2 (en) Method and computer program for rendering assemblies objects on user-interface to present data of application
CA2821522A1 (en) Method for checkpointing and restoring program state
US20110099542A1 (en) Controlling Compiler Optimizations
CN102567087A (zh) 在平台级管理任务的移动终端和方法
CN100432938C (zh) 隐式可配置消息队列基用户接口自动同步的系统和方法
CN102223363A (zh) 在管理通信会话的图形界面中生成持续会话的系统和方法
US11069019B2 (en) Multi-threaded asynchronous frame processing
US6421740B1 (en) Dynamic error lookup handler hierarchy
CN105955567B (zh) 用户界面和进度条的显示方法及装置
CN112700515A (zh) 动画播放方法和装置、存储介质、电子设备
US20050034124A1 (en) Mechanism for simultaneously operating multiple applications on a personal digital assistant implementing a palm operating system
CN1801831A (zh) 加快手机启动响应速度的方法
CN111966508A (zh) 一种消息的批量发送方法、装置、计算机设备和存储介质
CN109240667A (zh) 一种应用软件的开发方法、装置、存储介质及终端
CN113778659A (zh) 多线程处理方法和装置
CN114461127A (zh) 信息显示方法、装置、电子设备和计算机可读存储介质
CN110162385B (zh) 可动态刷新内存对象的处理框架
CN113779451A (zh) 一种页面加载方法和装置
US10303513B2 (en) Durable program execution
WO2020082354A1 (zh) 一种系统状态检测方法、系统状态装置及终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081112

Termination date: 20121231

CF01 Termination of patent right due to non-payment of annual fee