我只是想请教一下关于多线程任务的“最佳实践”。 例如,我们有一个C#应用程序,在启动时从我们数据库中的各种“类型”表中读取数据,并将信息存储在一个集合中,我们在整个应用程序中传递该集合。这可以防止我们每次需要此信息时都访问数据库。
目前,该应用程序正在同步地从10个表中读取数据。 我真的很想让应用程序从每个表中以不同的线程读取所有表,并行运行。 应用程序将等待所有线程完成后才继续启动应用程序。
我已经研究了BackGroundWorker,但只是想请教如何实现上述内容的建议。
- 这种方法是否合乎逻辑,能加速应用程序的启动时间?
- 我们如何最好地处理所有线程,牢记每个线程的工作相互独立,我们只需要在所有线程完成后才能继续。
期待您的回答。