当前位置:首页 > 技术知识 > 正文内容

【C#】委托、Action、Func 和 Event 之间的关系

maynowei7个月前 (10-02)技术知识73

委托、Action、Func 和 Event 之间的关系

委托(Delegate)

委托(Delegate) 是一个类型,代表一个方法的引用。其他所有类型,如 Action、Func 和 Event,都依赖于委托。

Action 和 Func

Action 和 Func 都是 C# 提供的通用委托类型,简化了常见的委托用法。

Action:表示没有返回值的方法。

Func:表示有返回值的方法。

Event

Event 是基于委托的机制,用于实现事件驱动编程。它与委托的主要区别在于,事件是由发布者触发,订阅者响应事件,而不能直接调用委托。

相关文章

[三菱PLC] 用"C语言"玩转PLC,三菱PLC使用ST语言超详细教程

ST语言,全称为结构化文本(Structured Text),是一种高级编程语言,专为工业自动化和控制系统设计。我们学习PLC一般是用梯形图,梯形图学会后,学习SFC,但是我发现梯形图和SFC虽然简单...

微软宣布SQL Server 2016,2005版将结束支持

IT之家讯 在芝加哥Ignite大会上,微软宣布了SQL Server 2016,并将于今年夏季发布公开预览版。SQL Server是由微软开发的关系型数据库管理系统,用于软件应用请求数据的存储和管理...

C# 中的多线程同步机制:lock、Monitor 和 Mutex 用法详解

在多线程编程中,线程同步是确保多个线程安全地访问共享资源的关键技术。C# 提供了几种常用的同步机制,其中 lock、Monitor 和 Mutex 是最常用的同步工具。本文将全面介绍这三种同步机制的用...

关于异步信号安全(下面关于异步电路危害的描述错误的是)

线程安全与重入以及异步信号安全的区别. 可重入一定是线程安全的,但是线程安全不一定是可重入的. 引用别人的博客中的话吧.如下: http://blog.csdn.net/xiaofei0859/art...

Qt QWaitCondition 的正确使用方法

简单用法QWaitCondition 用于多线程的同步,一个线程调用QWaitCondition::wait() 阻塞等待,直到另一个线程调用QWaitCondition::wake() 唤醒才继续往...

大量类加载器创建导致诡异FullGC(类的加载器有什么用)

“ 由 GC 问题带你全面了解 JDK8 Metaspace”01—现象最近接手了一个同事的项目,某一天接口的响应耗时突然增加了很多,由几十ms 增加到了几十秒。首先查看机器上的日志,有调用第三方接口...