我正在研究大约35批次更新许多数据库,作为我们日常工作过程的一部分。每一批都是在单一的网络应用程序中开发的。由于数据库问题,我已经将它们全部收集在一个Windows应用程序中以利用数据库连接池,并且我为每个批次分配了一个背景工作器。在应用程序中达到20批次,每件事情都很好。但是,当我为任何其他批处理添加其他背景工作时,应用程序挂起。我认为这是因为我在一个进程中运行太多线程。有没有针对这个问题的解决方案,例如,使应用程序与许多进程一起工作?? !!! Regards,winforms应用程序中的多处理
注意, 我已经为此应用程序(Core i7 cpu,8 gb ram)分配了一台机器。
线程的数量应该与您的问题的原因无关。请更具体地说明您的代码在哪里挂起。使用调试器查看程序线程挂起时的状态。如果您确信自己知道哪些是挂起/有问题的代码,请将其发布到此处以便我们提供帮助。 – elgonzo
亲爱的elgonzo,问题是用户界面挂着,我不能最小化或最大化窗口,我不能按任何按钮。我只需要一种方法,让所有这些背景工作者都能更快地执行UI。感谢您的回复。 – user2489259
使用调试器。现在你要求我们在黑暗中捅一捅,然后盲目猜测。也许你有一个僵局,也许你有太多的数据库连接打开,也许有些不同。谁知道...? – elgonzo