CodeGym
AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 委托和事件的常见错误

    C# SELF
    等级 54,课时 0
    分析在处理事件和委托时常见的失误:重复订阅 ( +=)、忘记取消订阅 ( -=, IDisposable)、处理器中的异常和通过 GetInvocationList() 逐个调用、在广播期间修改订阅、在 null 时调用以及安全的 ?.Invoke、正确的签名 EventHandler/ EventHandler<T>、只通过 OnEventName 调用、谨慎的访问器 add/ remove、关于 static 事件的陷阱、lambda 捕获问题和弱事件模式。另外给出命名和标准签名的建议。
    可用
  • 关于组织代码的建议

    C# SELF
    等级 54,课时 1
    在 C# 中处理事件的实用规则:选择委托 ( EventHandler),通过 OnEvent 模式来触发,使用 IDisposable 和 using 做好正确的订阅/取消订阅,线程安全的调用( Invoke),通过 EventArgs 做强类型,文档化、架构建议和反模式分析。
    可用
  • 优化事件驱动编程

    C# SELF
    等级 54,课时 2
    如何让事件代码既快又可靠:event 和 委托 的开销,"重" 处理器的影响,异常处理,异步 fire-and-forget 调用,通过 EventHandlerList 节省内存,使用 lock 保证线程安全,自定义访问器 add/ remove,以及性能分析( GetInvocationList, Task.WhenAll)。实战、陷阱和最佳实践。
    可用
  • 委托:进阶场景

    C# SELF
    等级 54,课时 3
    这节课我们会讲委托在 C# 的进阶用法:回调和异步(callbacks and async)、策略和比较器、lambda 与匿名方法、处理链、事件和响应式订阅、闭包、多播、控制反转和可扩展性、与 LINQ 的配合以及柯里化。会讲委托比较、序列化以及委托与事件( event)的区别。你还能看到关于 Action/ Func 的实战例子、针对 DI/IoC 的建议和常见错误分析。
    可用
  • 事件驱动编程示例 ( event)

    C# SELF
    等级 54,课时 4
    一步步讲解在 C# 中事件和委托的实际用法:从带通知的简单聊天到 pub/sub 架构的信号、异步完成的处理、阻止后续处理器的取消机制以及线程安全的订阅者管理。展示了 WinForms/WPF/MAUI 的示例、动态订阅/退订、以及对 EventHandler, EventArgs, INotifyPropertyChanged 的使用,还会提醒常见错误和如何避免它们。
    可用
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym