pool相关内容

带有嵌套 Web 请求的 Gevent 池

我尝试组织最多 10 个并发下载的池.该函数应下载基本 url,然后解析此页面上的所有 url 并下载每个 url,但同时下载的 OVERALL 数量不应超过 10. from lxml import etree导入 gevent从 gevent 进口猴子,游泳池进口请求猴子.patch_all()网址 = ['http://www.google.com','http://www.yandex. ..
发布时间:2021-12-15 15:34:12 Python

Multiprocessing.Pool 使 Numpy 矩阵乘法变慢

所以,我在玩multiprocessing.Pool 和Numpy,但似乎我错过了一些重要的点.为什么 pool 版本要慢得多?我查看了 htop,我可以看到创建了多个进程,但它们都共享一个 CPU,加起来高达 ~100%. $ cat test_multi.py将 numpy 导入为 np从时间导入时间从多处理导入池def mmul(矩阵):对于我在范围内(100):矩阵 = 矩阵 * 矩阵返 ..
发布时间:2021-12-08 09:46:14 Python

java内存池是如何划分的?

我目前正在使用 jconsole 监视 Java 应用程序.内存选项卡可让您选择: 堆内存使用非堆内存使用记忆池“伊甸空间"记忆池“幸存者空间"内存池“Tenured Gen"内存池“代码缓存"内存池“永久代" 它们之间有什么区别? 解决方案 堆内存 堆内存是 Java VM 为所有类实例和数组分配内存的运行时数据区域.堆的大小可以是固定的,也可以是可变的.垃圾收集器是一种自动内 ..
发布时间:2021-11-25 14:32:01 Java开发

Apache Commons Pool 2 中的 maxTotal 和 maxIdle 有什么区别?

我正在使用 Apache Commons Pool 2 实现来为我的应用程序提供对象池机制. 截至目前,我已在我的代码中将 maxTotal() 和 maxIdle() 的默认值设置为 10. 但我无法理解它们之间的区别是什么?如果我将 maxIdle() 设置为一个非常小(假设为 0)或非常大(等于 maxTotal())的值会怎样? 注意:Apache 类在内部为上述两个配置 ..
发布时间:2021-11-11 23:23:23 Java开发

检查变量是否在字符串常量池中

在Java中,当我们在创建字符串对象时使用文字字符串时,我知道在SCP(字符串常量池)中创建了一个新对象. 有没有办法检查变量是在 SCP 中还是在堆中? 解决方案 首先,正确的术语是“字符串池",而不是“字符串常量池";参见 字符串池 - 做字符串始终存在于常量中游泳池? 其次,您没有检查变量.您正在检查某个变量包含/引用的字符串.(包含对字符串的引用的变量不能“在 SCP ..
发布时间:2021-06-18 20:10:36 Java开发

Python Multiprocessing:并行执行前后串行执行代码

这里的新手:我正在尝试串行执行一些代码,然后创建一个线程池并并行执行一些代码.并行执行完成后,我想串行执行更多代码. 例如... 导入时间从多处理导入池print("我只想打印一次这个语句")定义工人(i):"""工人函数"""现在 = time.time()time.sleep(i)then = time.time()打印(现在,然后)如果 __name__ == '__main__': ..
发布时间:2021-06-18 20:10:33 Python

Python 多处理 imap

今天我又有一个关于多处理的问题...我有一个小的示例代码: 导入多处理定义功能(一):v = a**2w = a**3x = a**4y = a**5z = a**6b = [1,2,3,4,5,6,7,8,9,10]如果 __name__ == "__main__":pool = multiprocessing.Pool(processes=4)pool.imap(函数,b) 结果应该是 5 ..
发布时间:2021-06-18 20:10:29 Python

将 Python 池与上下文管理器一起使用或关闭并加入

Python 文档有 格式的示例 with Pool() as p:p.map(做) 但我看到很多人使用下面的格式. p = Pool()p.map(做)p.close()p.join() 哪个更受欢迎? 解决方案 我认为使用 Pool 作为上下文管理器(例如,with ...)是可取的.它是 Pool 的新增功能,可让您更清晰地封装池的生命周期. 需要注意的一件事是,当 ..
发布时间:2021-06-18 20:10:27 Python

Python 多处理:如何限制等待进程的数量?

使用Pool.apply_async运行大量任务(大参数)时,进程被分配并进入等待状态,等待进程数没有限制.这可能会耗尽所有内存,如下例所示: 导入多处理将 numpy 导入为 np定义 f(a,b):返回 np.linalg.solve(a,b)定义测试():p = multiprocessing.Pool()对于 _ 范围(1000):p.apply_async(f, (np.random. ..
发布时间:2021-06-18 20:10:19 Python

python - 如何通过pool.imap()函数传递数据以外的参数以在python中进行多处理?

我正在研究高光谱图像.为了减少图像中的噪声,我使用 pywt 包使用小波变换.当我正常执行此操作(串行处理)时,它运行顺利.但是当我尝试使用多核对图像进行小波变换来实现并行处理时,我必须传递某些参数,例如 小波族 阈值 阈值技术(硬/软) 但是我无法使用池对象传递这些参数,当我使用 pool.imap() 时,我只能将数据作为参数传递.但是当我使用 pool.apply_async ..
发布时间:2021-06-04 19:57:53 Python

具有多个 args 和 kwargs 的函数的 Multiprocessing.pool

我想使用 mutliprocessing.pool 方法并行计算.问题是我想在计算中使用的函数有两个 args 和可选的 kwargs,第一个参数是数据帧,第二个参数是 str,任何 kwargs 是字典. 对于我尝试执行的所有计算,我想要使用的数据框和字典都是相同的,只是第二个不断变化的参数.因此,我希望能够使用 map 方法将它作为不同字符串的列表传递给已经使用 df 和 dict 打包 ..
发布时间:2021-06-04 19:56:05 Python