gpt4 book ai didi

multithreading - 管理多进程 : What are the common strategies?

转载 作者:行者123 更新时间:2023-12-02 05:54:31 26 4
gpt4 key购买 nike

虽然多线程在某些情况下速度更快,但有时我们只想生成多个工作进程来完成工作。这样做的好处是,如果其中一个 worker 崩溃,主应用程序不会崩溃,而且用户不需要太担心互锁问题。

COM+ 的 Application Pooling似乎是在 Windows 上实现此目的的好方法。缺点是我们需要为工作进程编写一个 COM+ 包装器。

然而,当我search for Application Pooling on Google ,它的大部分用法似乎都与 IIS 有关。其他应用程序(如科学/图形)是否发现生成多个工作进程有用?

所以有几个问题:

  • 为什么 COM+ 在 IIS 以外的领域没有更流行?如果我编写非 IIS 应用程序并想在 Windows 上使用进程管理,我应该使用 COM+ 还是有更好的选择?

  • 跨平台的方式是什么?那里有库给我一个“进程池”(工作进程将智能地接手工作,可以管理等)

最佳答案

我无法对您问题的 COM 方面提供任何答案,但值得注意的是,在另一个世界(除了 HPC MPI 之外),多处理(而不是更常见的多线程方法)显然还存在,嗯蓬勃发展:Python

为什么? Python 的 GIL(“global interpreter lock”)严重削弱了大多数对多线程 python 代码的尝试,以至于 multiprocessing是在 SMP 上并行化 Python 的普遍推荐方法。标准库包括 process pools ;有各种other options也是。

Python 当然应该满足任何多平台需求!

关于multithreading - 管理多进程 : What are the common strategies?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3556326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com