concurrent.futures相关内容
我搞不懂的是,虽然ThreadPoolExecutor使用守护进程工作器,但即使主线程退出,它们仍然会运行。 我可以在python3.6.4中提供一个最小的例子: import concurrent.futures import time def fn(): while True: time.sleep(5) print("Hello")
..
我目前正在做一个据说很容易的Web抓取项目,同时学习Python。我有一个大约70MB的列表,其中有几百万个IP地址(sys.argv[1])需要处理。当然,并不是所有这些服务都是可访问的。 我正在尝试使用并发。未来,但当前遇到内存问题-最终导致整个进程被终止。 现在,我已经按照here的建议将我的期货分成了两组(完成和未完成)。 我正在使用大约100个工作进程(sys.argv[2]
..
我的目标是创建一个可以用来度量另一个函数的执行和资源使用情况的函数。通过教程,我已经使用Python的ThreadPoolExecutor创建了以下代码: from resource import * from time import sleep from concurrent.futures import ThreadPoolExecutor class MemoryMonitor:
..
/*这不是为了任何非法的事情,只是我的学校只使用7个整数,我想看看我是否能及时解决这个问题,因为目前我需要1.59年才能破解密码。学校在现场有自己的私人服务器,任何人都可以使用,而且很容易被发现。我只会在他们允许的情况下对我或我的朋友这么做。*/ 我只是想使用多进程或并发。期货来让这个密码破解程序在合理的时间内运行。 以下是我将其并列的尝试 import smtplib from
..
我正在尝试使用ProcessPoolExecutor,但收到错误“队列对象应仅通过继承在进程之间共享”,但我没有使用队列(至少没有显式使用)。我找不到任何东西来解释我做错了什么。 以下是演示该问题的一些代码(不是我的实际代码): from concurrent.futures import ProcessPoolExecutor, as_completed class WhyDoes
..
我正在使用此代码来抓取API: submissions = get_submissions(1) with futures.ProcessPoolExecutor(max_workers=4) as executor: #or using this: with futures.ThreadPoolExecutor(max_workers=4) as executor: for s i
..
我的问题与Combining asyncio with a multi-worker ProcessPoolExecutor非常相似,但稍有更改(我相信是async for),我就不会使用那里的优秀答案。 我正在尝试以下MWE: import concurrent.futures import asyncio import time async def mygen(u: int =
..
我正在阅读Python文档和PyMotW书,试图学习异步/等待、未来和任务。 Coroutines and Tasks documentation: 通常不需要在应用程序中创建Future对象 级别代码。 从future documentation它说明以下内容: loop.create_Future() 创建附加到事件循环的异步.Future对象。 这是在As
..
我有一个long_task函数,它运行大量CPU限制的计算,我想通过使用新的异步框架使其异步。产生的long_task_async函数使用ProcessPoolExecutor将工作卸载到不受GIL约束的不同进程。 问题在于,由于某种原因,从ProcessPoolExecutor.submit返回的concurrent.futures.Future实例抛出了TypeError。这是设计好的吗
..
有很多库使用其自定义版本的Future。kafka和s3transfer只是两个例子:它们的所有类似未来的自定义类都将object作为超类。 毫不奇怪,您不能对此类对象直接调用asyncio.wrap_future(),也不能对它们使用await。 包装此类期货以便与Asyncio一起使用的正确方式是什么? 推荐答案 如果未来类支持完成回调和result方法等标准未来功能,
..
我正在使用简单的线程模块来执行并发作业.现在我想利用并发期货模块.有人能给我举一个使用队列和并发库的例子吗? 我收到 TypeError: 'Queue' object is not iterable我不知道如何迭代队列 代码片段: def run(item):self.__log.info(str(item))返回真以 concurrent.futures.Th
..
我正在用 Python 编写一个应用程序,我需要同时运行一些任务.模块 multiprocessing 提供类 Process 并且 concurrent.futures 模块具有类 ProcessPoolExecutor.两者似乎都使用多个进程来执行它们的任务,但它们的 API 是不同的.为什么我应该使用一个而不是另一个? 我知道 concurrent.futures 是在 Python
..
我正在试验 Python 3.2 中引入的新的闪亮 concurrent.futures 模块,并且我注意到,几乎使用相同的代码,使用 concurrent.futures 中的 Pool 比使用 multiprocessing.Pool. 这是使用多处理的版本: def hard_work(n):#这里真的很辛苦经过如果 __name__ == '__main__':从多处理导入池,cp
..
在python中实现多处理的一种简单方法是 来自多处理导入池def 计算(数字):退货号码如果 __name__ == '__main__':池 = 池()结果 = pool.map(计算,范围(4)) 基于期货的替代实现是 from concurrent.futures 导入 ProcessPoolExecutordef 计算(数字):退货号码以 ProcessPoolExecutor()
..
由于它的并发期货模块,我刚刚转向 python3.我想知道是否可以让它检测错误.我想使用并发期货来并行程序,如果有更高效的模块请告诉我. 我不喜欢多处理,因为它太复杂而且没有多少文档可用.但是,如果有人可以编写一个没有类的 Hello World,只使用多处理并行计算的函数,这样它就很容易理解了,那就太好了. 这是一个简单的脚本: from concurrent.futures 导入
..
在 ThreadPoolExecutor (TPE) 中,回调是否始终保证与提交的函数在同一线程中运行? 例如,我使用以下代码对此进行了测试.我运行了很多次,看起来 func 和 callback 总是在同一个线程中运行. import concurrent.futures随机导入进口螺纹导入时间executor = concurrent.futures.ThreadPoolExecuto
..
有三个问题可能重复(但过于具体): 如何正确为已经存在的对象设置多处理代理对象 与进程共享对象(多进程) 我可以在 Future 中使用 ProcessPoolExecutor 吗? 通过回答这个问题,可以回答所有其他三个问题.希望我说清楚: 一旦我在多处理创建的某个进程中创建了一个对象: 如何将对该对象的引用传递给其他进程? (不那么重要)如何确保在我持有参考文献时
..
我对使用 selenium 在 python 中的并行执行感到困惑.似乎有几种方法可以解决,但有些方法似乎已经过时. 有一个名为 python-wd-parallel 的 python 模块,它似乎有一些功能可以做到这一点,但它是 2013 年的,现在还有用吗?我还发现了这个例子. 有 concurrent.futures,这看起来更新了很多,但实现起来并不那么容易.有人有在 sele
..
我希望 concurrent.futures.ProcessPoolExecutor.map() 调用由 2 个或更多参数组成的函数.在下面的示例中,我使用了 lambda 函数并将 ref 定义为一个与 numberlist 大小相同且值相同的数组. 第一个问题:有没有更好的方法来做到这一点?在 numberlist 的大小可以是百万到十亿个元素的情况下,因此 ref size 必须遵循
..
我正在使用 concurrent.futures.ProcessPoolExecutor 从数字范围内查找数字的出现.目的是调查从并发中获得的加速性能.为了基准性能,我有一个控制 - 一个串行代码来执行所述任务(如下所示).我编写了 2 个并发代码,一个使用 concurrent.futures.ProcessPoolExecutor.submit() 另一个使用 concurrent.futur
..