gpt4 book ai didi

python-multiprocessing - 在 AWS Lambda 上运行时未实现 _multiprocessing.SemLock

转载 作者:行者123 更新时间:2023-12-03 14:12:40 25 4
gpt4 key购买 nike

我有一个使用 multiprocessing 的短代码打包并在我的本地机器上正常工作。

当我上传到 AWS Lambda并在那里运行,我收到以下错误(已修剪堆栈跟踪):

[Errno 38] Function not implemented: OSError
Traceback (most recent call last):
File "/var/task/recorder.py", line 41, in record
pool = multiprocessing.Pool(10)
File "/usr/lib64/python2.7/multiprocessing/__init__.py", line 232, in Pool
return Pool(processes, initializer, initargs, maxtasksperchild)
File "/usr/lib64/python2.7/multiprocessing/pool.py", line 138, in __init__
self._setup_queues()
File "/usr/lib64/python2.7/multiprocessing/pool.py", line 234, in _setup_queues
self._inqueue = SimpleQueue()
File "/usr/lib64/python2.7/multiprocessing/queues.py", line 354, in __init__
self._rlock = Lock()
File "/usr/lib64/python2.7/multiprocessing/synchronize.py", line 147, in __init__
SemLock.__init__(self, SEMAPHORE, 1, 1)
File "/usr/lib64/python2.7/multiprocessing/synchronize.py", line 75, in __init__
sl = self._semlock = _multiprocessing.SemLock(kind, value, maxvalue)
OSError: [Errno 38] Function not implemented

会不会是python核心包的一部分没有实现?我不知道我在下面运行什么,所以我无法登录那里进行调试。

任何想法如何运行 multiprocessing在 Lambda 上?

最佳答案

据我所知,多处理在 AWS Lambda 上不起作用,因为缺少执行环境/容器 /dev/shm - 见 https://forums.aws.amazon.com/thread.jspa?threadID=219962 (可能需要登录)。

没有关于亚马逊是否/何时会改变这一点的消息(我能找到)。我还查看了其他图书馆,例如https://pythonhosted.org/joblib/parallel.html将回退到 /tmp (我们知道确实存在)如果找不到 /dev/shm , but that doesn't actually solve the problem .

关于python-multiprocessing - 在 AWS Lambda 上运行时未实现 _multiprocessing.SemLock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34005930/

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