异步方法调用

✍ dations ◷ 2025-04-26 21:35:58 #执行绪,软件设计模式

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

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

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

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

相关

  • 香草香料植物(英语:herbs)也称为香料植物,是指因为其香气而用在食物、调味品、药品及香料中的植物。在英文里区分香草(herb)和香辛料(spice)。一般香草植物会用到植物的绿叶或是花(可能是
  • 合胞体合胞体含有由一层细胞膜包绕的多个细胞核的一团细胞质,这通常是由于发生了细胞融合或一系列不完全细胞分裂周期所致,在后一种情况中,核发生了分裂,但细胞却没有分裂。
  • 布莱克利县布莱克利县(Bleckley County)是位于美国佐治亚州中部的一个县,面积568平方公里,县治科克伦。根据2000年美国人口普查,共有人口12,141。布莱克利县成立于1912年7月30日,县名源自佐
  • 电子计算器电子计算器是一种小型的手持或桌面的设备,用于完成数学计算。一般的数学电子计算器与电脑是不一样,数学计算器通常仅能完成算术运算和少量逻辑操作并显示其结果,但一般不能修改
  • 文化人类学体质人类学 文化人类学 语言人类学 分子人类学 社会人类学 考古学应用人类学 民族志 参与观察 文化相对论文化 • 社会 史前史 • 人类演化 亲属 婚姻 • 家庭 物质文化 种
  • 纽约华尔道夫酒店纽约华尔道夫酒店,或纽约华尔道夫-阿斯托里亚酒店(英语:Waldorf Astoria New York)是位于纽约曼哈顿中城的一处42层豪华酒店,正门在公园大道301号,不过酒店的整群建筑物占据公园大
  • 立方吉米体积(英语:Volume)是物件占有多少空间的量。体积的国际单位制是立方米。一件固体物件的体积是一个数值用以形容该物件在空间所占有的空间。一维空间物件(如线)及二维空间物件(如正
  • 杭瑞高速杭州—瑞丽高速公路,简称杭瑞高速,中国国家高速公路网编号为G56,起点在杭州,途经黄山、景德镇、九江、咸宁、岳阳、常德、吉首、遵义、毕节、六盘水、曲靖、昆明、大理,终点在瑞
  • 美国空军第62空运联队美国空军第62空运联队(英语:62nd Airlift Wing, 62 AW)是美国空军机动司令部美国第十八航空队下属的航空联队,驻扎美国华盛顿州的刘易斯-麦克德联合基地(英语:Joint Base Lewis–M
  • 三昧堂创意木偶团队三昧堂创意木偶团队(SamadhiTang Creative Puppet Troupe),是台湾的布袋戏创作团体,从打版、造型、偶衣缝制、兵器制作、角色命名设定、演出、宣传、办活动等,皆由团队成员一手包