异步方法调用

✍ dations ◷ 2025-07-19 12:08:39 #执行绪,软件设计模式

异步方法调用或异步方法模式是(多线程)面向对象程序设计中用于异步调用对象的潜在的长期运行方法的一种设计模式。它等价于Allan Vermeulen提出的IOU模式。

基于事件的异步模式是异步方法调用的一个变种,开销更大但能更好的表现软件组件对象。.NET框架和Java中的java.util.concurrent.FutureTask类中使用的基于事件的异步模式使用事件来解决同样的问题。

大部分编程语言中对方法的调用是同步执行的。例如在线程执行体内,即线程的调用函数中,方法的调用就是同步执行的。如果方法需要很长的时间来完成,比方说从Internet加载数据的方法,调用者线程将被阻塞直到方法调用完成。如果不希望调用被阻塞,则可以通过创建新的worker线程并在worker线程中调用方法,在大多数编程环中上这样做可能需要很长的一段代码,尤其是需要小心处理线程过多的额外开销。异步方法调用它通过使用一种立即返回的异步的变体并提供额外的方法来支持接受完成通知以及完成等待改进长期运行的(同步)方法。

活动对象(active object)设计模式通常使用异步方法调用。异步方法调用的一个替代方案是同步的方法调用和未来对象(future object)模式。在Web浏览器的实现上可以采用异步方法调用,例如浏览器需要在Web页面中的图像加载完成之前将页面显示出来。

相关

  • 分形分形(英语:fractal,源自拉丁语:frāctus,有“零碎”、“破裂”之意),又称碎形、残形,通常被定义为“一个粗糙或零碎的几何形状,可以分成数个部分,且每一部分都(至少近似地)是整体缩小后
  • dsRNA核糖核酸病毒(英语:RNA virus),又称RNA病毒,其遗传物质为RNA,这些核糖核酸通常是单链RNA(ssRNA),但是也可能是双链RNA(dsRNA)。由RNA病毒感染造成的著名人类疾病包括艾滋病(AIDS)、埃博
  • 麦克唐纳德詹姆士·拉姆齐·麦克唐纳,FRS,JP(James Ramsay MacDonald,1866年10月12日-1937年11月9日),英国政治家,工党出身,1924年1月至11月出任英国首相兼外务大臣,1929年6月至1935年6月第二度
  • 类固醇皮质激素皮质类固醇(英语:Corticosteroids)是由肾上腺皮质制造和分泌的类固醇激素,也可经由人工合成。它的药理作用复杂,且广泛涉及生理系统作用,如压力反应、免疫反应,以及发炎、糖类代谢
  • 1490年庆阳事件1490年庆阳事件( Ch'ing-yang event of 1490)或庆阳流星雨(Chíing-yang meteor shower)推测是发生在1490年3月或4月的流星雨或流星空中爆炸。这个地区是现在的陕西和甘肃的一
  • 芦木见内文芦木(学名:Calamites)是一属已灭绝的高大的树状蕨类,和现代的木贼是近亲。生长在潮湿的沼泽地带中。在石炭纪时颇为兴盛,和鳞木、封印木等一同形成广大的蕨类雨林。它们的
  • 朱拉隆功朱拉隆功(泰语:จุฬาลงกรณ์,1853年9月20日-1910年10月23日),汉名郑隆,(泰语:เจิ้งหลง),全称帕·巴·颂德·帕·博拉明·玛哈·朱拉隆功·帕·尊拉宗告·昭育霍(泰语:พ
  • 伊玛目·朋佐尔伊玛目·朋佐尔(印尼语:Tuanku Imam Bonjol,1772年-1864年11月6日)一译彭佐尔伊曼。是19世纪一位印度尼西亚抗荷斗争领袖。原名“穆罕默德·沙哈布”(印尼语:Muhammad Shahab),因在苏
  • 唇齿闪音唇齿闪音(Labiodental flap)是辅音的一种,用于一些语言当中。现代标准汉语中无此音。国际音标以⟨ⱱ⟩代表此音。唇齿闪音的特征有:当符号成对出现时,左边的是清音,右边的是浊音。
  • 2011年台北周末票房冠军2011年台北周末票房冠军,数据为开眼电影网的周末三日票房(单位:新台币)。