异步方法调用

✍ dations ◷ 2025-10-02 07:41:58 #执行绪,软件设计模式

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

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

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

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

相关

  • 化疗人体解剖学 - 人体生理学 组织学 - 胚胎学 人体寄生虫学 - 免疫学 病理学 - 病理生理学 细胞学 - 营养学 流行病学 - 药理学 - 毒理学化学疗法(英语:Chemotherapy),简称化疗(Che
  • 磋商谈判是两人或多于两人进行对话,双方企图达成正向的结果。此正向结果可有利于所有谈判参与者,或仅对个别或一些谈判参与者有利。谈判的目标是解决歧见,以获得个别或集体利益,或形
  • 紫绀发绀(Cyanosis,“绀”音“gàn”),或称紫绀、苍蓝症,是因在接近皮肤表面的血管出现脱氧后的血红蛋白,令皮肤或黏膜带青色的症状。根据Lundsgaard和Van Slyke的著作,当去氧血红素的
  • 四色视觉四色视觉(英语:Tetrachromacy)是指生物体拥有四种独立的感光通道,或指眼球中有四种感色的视锥细胞(较人类多出感应紫外线的锥状细胞),大部分鸟类具有此种特征。一般人类所绘制出的
  • 加州大学圣地牙哥分校圣迭戈加利福尼亚大学 (英语:University of California, San Diego;常用缩写“UCSD”或“UC San Diego”),简称“圣迭戈加州大学”,民间多译作“加利福尼亚大学圣迭戈分校”,是美国
  • 氰酸铵氰酸铵是一种无机化合物,化学式为NH4OCN。它是无色固体。氰酸铵的结构通过X射线衍射表征。C−O键和C−N键的键长分别为1.174(8)和1.192(7) Å,与O=C=N-一致。NH4+和N(而不是O)形
  • 德意志联邦共和国德意志联邦共和国(德语:Bundesrepublik Deutschland)总共包括以下两个时期:1. 西德,从1949年5月23日成立到1990年10月3日两德统一期间的德意志联邦共和国。2. 当今德国,1990年10月
  • 亚利桑那州行政区划美国的亚利桑那州一共有15个县,其中莫哈维县、皮马县、亚瓦派县和尤马县是在1862年亚利桑纳领地成立后于1864年建立的。1865年莫哈维县还分裂出了一个帕乌特县,但1871年该县又
  • 食神食神可以指:
  • 2019冠状病毒病冈比亚疫情2019冠状病毒病冈比亚疫情,介绍在2019新型冠状病毒疫情中,在冈比亚发生的情况。当地时间17日晚,冈比亚卫生部长宣布,冈比亚确诊首例新冠肺炎病例。据报导,该确诊病例为一名20多岁