【C#】回调函数

定义

回调函数是指在某个操作完成或事件发生时,系统调用预先注册的函数来处理相应的逻辑。通过委托的机制,可以将一个函数作为参数传递给另一个函数,使得后者在适当的时机调用传入的函数。这种机制在需要异步操作、事件处理、用户交互等情况下非常有用。

代码

public delegate void CallbackFunction(string message);

public class Operation
{
    public void LongRunningOperation(CallbackFunction callback)
    {
        // 模拟耗时操作
        Console.WriteLine("开始执行长时间操作...");
        Thread.Sleep(2000);
        Console.WriteLine("长时间操作完成。");

        // 调用回调函数
        callback("操作已完成");
    }
}

public class Program
{
    static void Main()
    {
        Operation operation = new Operation();
        operation.LongRunningOperation(OnOperationComplete);
    }

    static void OnOperationComplete(string message)
    {
        Console.WriteLine("操作回调:" + message);
    }
}

结果

图片[1]-【C#】回调函数-涣清博客

在上述示例中,Operation 类中的 LongRunningOperation 方法执行了一个耗时的操作,然后通过传入的委托类型参数 CallbackFunction 调用回调函数。Program 类中的 OnOperationComplete 方法作为回调函数,在操作完成后被调用并输出一条消息。 通过使用委托和回调函数,可以将操作的结果或状态通知给调用方,并在适当的时候执行相应的逻辑,实现了更灵活的程序控制和交互。回调函数在异步编程、事件驱动编程、用户界面交互等场景中经常被使用。

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容