何时何地调用 VB.NET 中的RemoveHandler?

2024-03-14

我正在开发 .NET 1.1 中的 VB.NET windows 窗体项目。我有这种类型的架构,非常简单。

Public MustInherit Class BaseTestLogic

  Private _TimerPoll As Timer

  Public Sub New(ByVal sym As SymbolFileMng, ByVal cfg As LampTestConfig, ByVal daas As DaasManager, ByVal mcf As Elux.Wg.Lpd.MCFs.VMCF)

    AddHandler _TimerPoll.Tick, AddressOf TimerPoll_Tick

  End Sub

End Class

Public Class SpecificTestLogic
  Inherits BaseTestLogic      

End Class

根据我正在进行的测试类型,我创建一个派生于的特定测试的实例基本测试逻辑。但我发现在创建数百次对象之后我可以拥有堆栈溢出例外。

我检查了我的代码,发现我忘记了删除处理程序到定时器滴答声。问题是,何时何地删除 hadler 是正确的?

我是否需要实施I一次性基类中的接口和RemoveHandler中的Dispose?


您可能会同意在调用 Dispose 时删除处理程序,但纯粹主义者会说“除了处置非托管资源之外,您不应该滥用 IDisposable ”。

另一种选择是删除处理程序Finalize method.

如果这对您的设计有意义的话,您也可以放心地在几个不同的位置移除处理程序。删除已删除的处理程序不会导致任何问题 - 除非该事件是自定义事件并且其 AddHandler/RemoveHandler 实现与非自定义事件的行为不匹配(只需使用 [Delegate].CombineDelegate/[Delegate] 。消除)。只是不要告诉你纯粹的朋友这件事;他们不会遵守。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

何时何地调用 VB.NET 中的RemoveHandler? 的相关文章

  • 如何在 .NET 中轻松取消转义 XML 实体

    我有一些代码返回 XMLNode 的 InnerXML 该节点可以只包含一些文本 带有 HTML 或 XML 例如
  • 如何向 addrange select 语句添加异步“await”?

    我有一个这样的函数 public async Task
  • 如何使用鼠标拖动和移动winform

    我知道如何通过添加以下代码来 拖动和移动 winform Protected Overrides Sub WndProc ByRef m As Message If m Msg 163 And ClientRectangle Contain
  • 无法通过 HTTPS 调用 Web 服务

    我正在开发一个 Net 应用程序 它与 Web 服务通信以获取一些数据 Net 应用程序和 Web 服务之间的连接是通过 HTTPS 完成的 当我从 Net 应用程序调用 Web 服务时 我得到以下堆栈跟踪 System Net WebEx
  • .NET JIT 编译的代码缓存在哪里?

    NET 程序首先被编译为 MSIL 代码 当它被执行时 JIT编译器会将其编译为本机机器代码 我想知道 这些JIT编译的机器代码存储在哪里 它只存储在进程的地址空间中吗 但由于程序的第二次启动比第一次快得多 我认为即使在执行完成后 该本机代
  • 如何在 ASP.NET 中检查用户是否在线?

    该网站 最后活动 1 分钟前来自此 IP 地址 背后的逻辑是什么 如果您在隐藏字段中获取用户的 IP 地址 我该如何在 vb net 中执行此操作 我如何查看有多少用户在线使用该应用程序 ASP NET 会员服务支持此功能 要获取特定用户的
  • 使用 VB.Net 的 GhostText

    大家好 我尝试创建一个幽灵文字在文本框上使用标签 我使用的是VB Net2005 我用这段代码完成了这个 Public Class frmDataEntry Private Sub PhantomTextLastName If txtLas
  • 使用 .NET 将两个 PNG 图像合并为一张图像

    我有两个 其实很多 PNG http en wikipedia org wiki Portable Network Graphics png 我的应用程序中的图像 两者都有透明区域 我想在我的应用程序中拍摄两个图像 将它们组合起来 并将结果
  • Rfc2898DeriveBytes 与密码的 Sha2 哈希生成

    我最近知道使用 SHA256 为加盐密码生成密码哈希 在阅读了一些有关加盐密码和安全性的内容后 我看到rfc2898derivebytes and passwordderivebytes NET 中的类 使用有什么好处吗rfc2898der
  • 如何使用 json.net 在生成的 json 中“内联”属性

    我的一个类中有一个属性 我试图用 json net 序列化它 我想 内联 这意味着 我不想将该属性嵌套到具有属性名称的元素中 但其内容直接位于其父级中 这是一个例子 假设我有以下类结构 public interface ISteeringW
  • Phantom JS 50% 的时间失败

    我搜索一个文本框 然后尝试用字符串填充它 这是代码 var fname driver FindElement By Name iFirstName 50 if fname null do System Threading Thread Sl
  • 反序列化 DateOnly

    我有一条正在尝试反序列化的记录 public record MementoTimeEntry Guid Id Guid ActivityId string UserId string Title TimeOnly StartTime Tim
  • 如何将数据插入 Microsoft Access 数据库?

    我正在尝试将数据插入 Microsoft Access 数据库 我将数据插入到 Access 数据库中 但只有第一次和第二次显示我插入的数据 当我重建应用程序时 我插入的数据消失了 我不知道他们去了哪里并且没有出现 我使用 C 和 NET
  • 如何在没有 WebBrowser 控件的情况下“呈现”HTML

    首先 我不知道 渲染 是否是正确的词 我喜欢从网站获取信息 因此 目前我使用 WebBbrowser 控件 现在我喜欢使用 HttpWebRequests 因为我认为这样更快 并且可以更轻松地使用线程 但我无法使用它们 因为我从 HttpW
  • 登录方式使用GINA定制

    我知道在 GINA 中找到大师并不容易 但我的问题最接近进程间通信 IPC 我用非托管 c 编写了我的自定义 GINA 我在其中包含了一个方法来检查用户尝试的指纹的有效性为了登录 该函数将调用正在运行的系统Windows服务中用C 编写的一
  • .NET Core Azure WebJobs 不从 Azure 应用程序设置读取

    I have an app service running with it s respective ConnectionString from Azure Portal The ConnectionString is point to A
  • “为 .Net 1.1 生成 Web 服务代理的任何工具”

    我有一个 WSDL 文件 其中包含指向外部 XSD 的链接 我也将 xsd 部署到了正确的相对路径 因为它在 WSDL 中是引用的 当我尝试使用 VS 2003 Net 1 1 wsdl 工具 生成代理时 代理未生成 然而它在 VS 200
  • C# 事务中的事务

    我正在使用 C 将发票的平面文件导入到数据库中 如果遇到问题 我将使用 TransactionScope 回滚整个操作 这是一个棘手的输入文件 因为一行不一定等于一条记录 它还包括链接记录 发票将包含标题行 行项目和总计行 有些发票需要跳过
  • 启动 onclick 比使用 document.onload 更快

    我有带有链接的 html 页面 我想在其中附加一个功能onclick事件 一种方法当然是 a href save php Save a 但我知道这不是最佳做法 所以我反而等待window onload 循环遍历链接并将保存功能附加到链接re
  • VB.NET 是否优化字符串文字的串联?

    如同this https stackoverflow com questions 288794 does c optimize the concatenation of string literals问题 但对于 VB NET 来说 因为我

随机推荐

  • Java泛型方法的继承和覆盖规则

    我有一个具有泛型方法的抽象类 我想通过用特定类型替换泛型参数来覆盖泛型方法 所以在伪代码中我有以下内容 public abstract class GetAndParse public SomeClass var public abstra
  • shinydashboard 一些 Font Awesome 图标不起作用

    使用时shinydashboard我发现有些图标似乎有效 而有些则无效 在下面的示例中 电池充满图标不起作用 而时钟图标则工作正常 我无法弄清楚为什么会发生这种情况 library shiny library shinydashboard
  • 具有服务器端渲染 HTML 片段的骨干模型

    我想开始使用 Backbone js 来更好地构建我的 JavaScript 文件 但是 我不想重做我的应用程序以通过 API 仅输出 JSON 如果我错了 请纠正我 但到目前为止 我的印象是即使没有 JSON API 我仍然可以使用 Ba
  • Play Framework - 如何忽略 Json 序列化的某些字段?

    我有案例课 case class User id Option Long None username String password Option String None 这是该案例类的 json 序列化器 object User impl
  • Rails:如何更改页面标题?

    在不使用插件的情况下为 Rails 应用程序中的页面创建自定义标题的最佳方法是什么 在你看来 做这样的事情 h1 h1 布局文件中包含以下内容
  • Deedle - 按列区分

    前几天我遇到了一个情况 我的某个特定专栏Frame有一些重复的值 我想删除所述列具有重复值的任何行 我设法使用过滤器函数破解了一个解决方案 虽然它对于手头的探索性数据分析来说已经足够好了 但它应该更加痛苦 尽管四处寻找 我还是找不到任何关于
  • 数据表打印复杂表头打印预览

    您好 我正在使用数据表 它很棒 但我在像这样的复杂标头中遇到问题 thead tr td some text td tr tr td some text td tr thead now in showing page its like li
  • MAMP 未在 El Capitan 10.11.1 上启动 Apache 服务器

    因此 我在 Yosemite 上的 Apache 服务器上使用 MAMP 已经有一段时间了 我只需要一台本地主机 因此我使用常规 MAMP 而不是 MAMP Pro 我使用的是 MAMP 3 4 当我单击 启动服务器 按钮时 它不响应单击
  • mongoose .find() 方法返回具有不需要的属性的对象

    所以 我和猫鼬一起工作已经有一段时间了 我发现了一些非常奇怪的事情 如果有人能启发我 那就太好了 问题是 当使用 mongoose 的 find 方法时 我作为响应得到的对象充满了我不知道它来自哪里的属性 我猜测它们是内置属性 但无论如何
  • 有没有办法为 Class::DBI 提供缓存机制?

    我有一组相当复杂的 ORM 模块 它们继承自类别 DBI http search cpan org dist Class DBI 由于数据变化很少 我正在考虑在此之上使用缓存 记忆层来加快速度 我找到了一个模块 类 DBI 可缓存 http
  • Swift 中的飞利浦 HUE SDK

    我对斯威夫特很陌生 我确实有一些使用 Objective C 的经验 尽管距离我真正用它写过任何东西已经有两年了 我正在尝试将 Phillips HUE SDK 与 Swift 一起使用 但遇到了一些问题 我正在尝试将以下 Objectiv
  • form_for 中的 Rails 参数

    我正在制作一个用于更新或保存已保存消息的表单 subject recipients br
  • 寻找行为类似于 InRequestScope 的 Ninject 作用域

    在我的服务层上我注入了一个UnitOfWork以及构造函数中的 2 个存储库 工作单元和存储库有一个实例DbContext我想在他们两个之间分享 我怎样才能用 Ninject 做到这一点 应该考虑哪些范围 I am 不在网络应用程序中所以我
  • Prometheus 警报管理器不发送警报 k8s

    我使用 Prometheus Operator 0 3 4 和警报管理器 0 20 但它不起作用 即我看到警报被触发 在警报选项卡上的 Prometheus UI 上 但我没有收到任何电子邮件警报 通过查看日志 我看到以下内容 知道吗 请参
  • 防止来自 __doPostBack 的完全回发

    我有一个内容页面 其中包含以下内容 UpdatePanel1 包含错误显示 Div包含两个按钮的更新触发器 UpdatePanel2 包含带有 asp button 的进程 1 updatePanel3 包含带有 asp button 的进
  • 监控 Commons DBCP?

    我的 Tomcat 中的一个巨大的 Web 应用程序有时会开始使用过多的 DBCP 连接 从而导致问题 为了进行调查 我想准确地知道每个时间点哪个线程 方法正在持有池的连接 不需要实时 事后分析就可以了 我一直在寻找这样的DBCP监控工具
  • 删除 Django Crispy Form 中的标签

    有谁知道是否有正确的方法来去除酥脆形式的标签 我到目前为止 self fields field label 但这不是一个很好的解决方案 Just do self helper form show labels False 删除所有标签
  • Java BufferedReader 在循环之前检查循环的下一行

    我正在解析 csv 文件 对于 cvs 的每一行 我使用解析的值创建一个对象 并将它们放入一个集合中 在将对象放入地图并循环到下一个对象之前 我需要检查下一个 cvs 行是否与实际对象相同 但特定属性值不同 为此 我需要检查缓冲区的下一行
  • Djangolush 与 sqlclear 和syncdb

    谁能告诉我们之间是否有区别 gt manage py flush or reset and gt manage py sqlclear appname python manage py dbshell gt manage py syncdb
  • 何时何地调用 VB.NET 中的RemoveHandler?

    我正在开发 NET 1 1 中的 VB NET windows 窗体项目 我有这种类型的架构 非常简单 Public MustInherit Class BaseTestLogic Private TimerPoll As Timer Pu