Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Gevent猴子修补-溢流错误_Python_Gevent - Fatal编程技术网

Python Gevent猴子修补-溢流错误

Python Gevent猴子修补-溢流错误,python,gevent,Python,Gevent,我尝试在第一行使用gevent.monkey.patch_all()在Raspberry Pi上的Python3.7上运行我的Flask项目。但最终却出现了这样的错误: Traceback (most recent call last): File "src/gevent/_hub_local.py", line 71, in gevent._gevent_c_hub_local.get_hub File "src/gevent/_hub_local.p

我尝试在第一行使用gevent.monkey.patch_all()在Raspberry Pi上的Python3.7上运行我的Flask项目。但最终却出现了这样的错误:

Traceback (most recent call last):
   File "src/gevent/_hub_local.py", line 71, in gevent._gevent_c_hub_local.get_hub
   File "src/gevent/_hub_local.py", line 80, in gevent._gevent_c_hub_local.get_hub_noargs
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/hub.py", line 445, in __init__
     self.loop = self.loop_class(flags=loop, default=default) # pylint:disable=not-callable
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/hub.py", line 459, in loop_class
     return GEVENT_CONFIG.loop
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/_config.py", line 50, in getter
     return self.settings[setting_name].get()
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/_config.py", line 146, in get
     self.value = self.validate(self._default())
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/_config.py", line 248, in validate
     return self._import_one_of([self.shortname_map.get(x, x) for x in value])
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/_config.py", line 219, in _import_one_of
     return self._import_one(item)
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/_config.py", line 237, in _import_one
     module = importlib.import_module(module)
   File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
     return _bootstrap._gcd_import(name[level:], package, level)
   File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
   File "<frozen importlib._bootstrap>", line 980, in _find_and_load
   File "<frozen importlib._bootstrap>", line 149, in __enter__
   File "<frozen importlib._bootstrap>", line 88, in acquire
   File "src/gevent/_semaphore.py", line 273, in gevent._gevent_c_semaphore.Semaphore.__enter__
   File "src/gevent/_semaphore.py", line 274, in gevent._gevent_c_semaphore.Semaphore.__enter__
   File "src/gevent/_semaphore.py", line 175, in gevent._gevent_c_semaphore.Semaphore.acquire
   File "/home/pi/server/venv/lib/python3.7/site-packages/gevent/thread.py", line 121, in acquire
     acquired = BoundedSemaphore.acquire(self, blocking, timeout)
   File "src/gevent/_semaphore.py", line 175, in gevent._gevent_c_semaphore.Semaphore.acquire
   File "src/gevent/_semaphore.py", line 200, in gevent._gevent_c_semaphore.Semaphore.acquire
 OverflowError: Python int too large to convert to C long
我需要有patch monkey,因为当我删除它时,其他一切都正常工作,但从外部线程发出的套接字正在堆叠和缓冲,并在很长一段时间后到达JavaScript处理程序

我的模块版本:

Flask==1.1.2
Flask-SocketIO==5.0.1
python-engineio==4.0.0
python-socketio==5.04
gevent==20.12.1
gevent-websocket==0.10.1
谁都知道,我该如何解决这个问题


谢谢。

问题是我在RPi上运行的是32位而不是64位的Python3。

请同时显示带有导入的代码或查看RPi:检查是否运行32位或64位:这是我的导入,它在第一行失败:import gevent.monkey;gevent.monkey.patch_all()#patch_thread(),UserMixin from flask\u sqlalchemy import sqlalchemy from flask\u socketio import socketio from flask\u babel\u js import BabelJS from flask\u babel import babel from flask import flask import platform import datetime import socket sys import osI使用gevent本人和Python 3.8.5,没有问题。您没有从init、py文件导入导致的棘手问题吗?也许可以创建一个新的虚拟环境,从您需要的基本软件包开始,检查哪里出错,并显示64位选项。所以,我认为最短的路径就是完成这项工作。用另一张SD卡进行实验很容易
Flask==1.1.2
Flask-SocketIO==5.0.1
python-engineio==4.0.0
python-socketio==5.04
gevent==20.12.1
gevent-websocket==0.10.1