【发布时间】:2011-01-30 23:48:58
【问题描述】:
我有一部分代码需要在线程开始执行代码之前和执行完成之后在特定应用程序域中运行的每个线程中执行(不管它是如何产生的)。
我发现 System.ComponentModel.BackgroundWorker 类的事件与我需要的第二个事件相同(见表格)。
┌────────────┬────────────────────────┬──────────── ────────────────────────────────────────────────── ────────────┐ │ ?类 │ BackgroundWorker 类 │ 描述 │ ├────────────┼────────────────────────┼──────────── ────────────────────────────────────────────────── ────────────┤ │ Ready │ - │ 操作执行即将开始。 │ ├────────────┼────────────────────────┼──────────── ────────────────────────────────────────────────── ────────────┤ │ ? │ DoWork │ 执行操作。 │ ├────────────┼────────────────────────┼──────────── ────────────────────────────────────────────────── ────────────┤ │ ? │ ProgressChanged │ 通知操作执行进度。 │ ├────────────┼────────────────────────┼──────────── ────────────────────────────────────────────────── ────────────┤ │ 已完成 │ RunWorkerCompleted │ 操作已完成、已取消或已引发异常。 │ └────────────┴────────────────────────┴──────────── ────────────────────────────────────────────────── ────────────┘是否存在上表中的 Ready 和 Completed 等事件?我在 System.Threading.Thread 和 System.AppDomain 类上都没有看到此类事件。
【问题讨论】:
标签: c# multithreading events