我有一组非常昂贵的操作,但它们都是独立的.其中一些依赖于某些"全局"状态或数据,但都非常只读.我相当肯定,操作本身都可以并行完成,但所有操作都需要在程序进行到某一点之前完成.
是否值得在这里添加额外的工作和多线程的危险,特别是因为主线程必须阻塞并等待?
其他问题是这个应用程序很可能必须在Windows和Linux上运行,我不确定添加使用两个不同线程系统的代码的复杂性.
那么,第一个问题是:你真的有问题吗?
听起来你肯定可以安全有效地并行化这个,但如果等待操作串行执行实际上不是问题,那么可能不值得担心.
例如,如果这是一个在夜间执行的批处理应用程序,则可能不值得这样做.但是,如果这是面向用户的应用程序并且用户厌倦了等待,那么听起来使用多线程来解决问题是值得的.
| 归档时间: |
|
| 查看次数: |
178 次 |
| 最近记录: |