【专栏学习】APM——异步编程模型(.NET不推荐)


(1)learning hard C#学习笔记#

异步1:《learning hard C#学习笔记》读书笔记(20)异步编程

(2)《C# 4.0 图解教程》#

22.4 异步编程模式

(3)《精通C#(第6版)》#

19.2 .NET 委托的简短回顾
19.3 委托的异步性
19.4 异步调用方法

(4)《C#本质论(第3版)》#

19.3 异步编程模式

知识点:异步返回结果 http://www.cnblogs.com/heyuquan/archive/2013/03/22/Asynchronous-Programming-Model.html#

/// <summary>
/// APM 阻塞式异步响应
/// </summary>
public class Calculate_For_Break
{
    public static void Test()
    {
        CalculateLib cal = new CalculateLib();
 
        // 基于IAsyncResult构造一个异步API   (回调参数和状态对象都传递null)
        IAsyncResult calculateResult = cal.BeginCalculate(123, 456, null, null);
        // 执行异步调用后,若我们需要控制后续执行代码在异步操作执行完之后执行,可通过下面三种方式阻止其他工作:
        // 1、IAsyncResult 的 AsyncWaitHandle 属性,带异步操作完成时获得信号。
        // 2、通过 IAsyncResult 的 IsCompleted 属性进行轮询。通过轮询还可实现进度条功能。
        // 3、调用异步操作的 End*** 方法。
        // ***********************************************************
        // 1、calculateResult.AsyncWaitHandle.WaitOne();
        // 2、while (calculateResult.IsCompleted) { Thread.Sleep(1000); }
        // 3、
        string resultStr = string.Empty;
        int result = cal.EndCalculate(ref resultStr, calculateResult);
    }
}

作者:【唐】三三

出处:https://www.cnblogs.com/tangge/p/9147987.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   【唐】三三  阅读(166)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2016-06-06 数据结构和算法 – 10.集合
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示