多线程编程:从线程包装器到 BackgroundWorker
1. 线程包装器基础
多线程编程中,一个常见的场景是执行耗时任务,例如在给定范围内查找质数。这里使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来实现这一功能。为了实现多线程操作,我们需要创建一个线程包装器类。
1.1 线程包装器基类
线程包装器基类 ThreadWrapperBase 包含两个必须重写的方法: DoTask() 和 OnCompleted() 。
' Override this class to supply the task logic.
Protected MustOverride Sub DoTask()
' Override this class to supply the callback logic.
Protected MustOverride Sub OnCompleted()
1.2 创建工作类
为了使用线程包装器,我们需要创建一个派生类 FindPrimesThreadWrapper 。这个类需要提供以下四个方面的内容:
- 存储初始数据的字段或属性 :在这个例子中,是 from 和 to 数字,用于界定搜索范围。
- 存储最终数据的字段或属性 :这里是
超级会员免费看
订阅专栏 解锁全文
10

被折叠的 条评论
为什么被折叠?



