zlib在cx冻结的python 3.4应用程序中不可用

zlib在cx冻结的python 3.4应用程序中不可用,python,zlib,cx-freeze,Python,Zlib,Cx Freeze,当我在Windows 10 64位(32位python)上将python 3.4应用程序编译成带有cx_冻结的可执行文件时,我从看似随机的导入尝试(例如导入getpass/import QtCore)中间歇性地(大约四分之一)得到以下运行时异常: 当我在启动时没有收到错误时,应用程序运行正常。一些注意事项: 1-使用python 2.7构建的类似应用程序没有例外 2-直接从.pyw文件运行时,我没有得到异常(即未冻结) 跟踪: File "c:\python\32-bit\3.4\lib\thr

当我在Windows 10 64位(32位python)上将python 3.4应用程序编译成带有cx_冻结的可执行文件时,我从看似随机的导入尝试(例如导入getpass/import QtCore)中间歇性地(大约四分之一)得到以下运行时异常:

当我在启动时没有收到错误时,应用程序运行正常。一些注意事项:

1-使用python 2.7构建的类似应用程序没有例外

2-直接从.pyw文件运行时,我没有得到异常(即未冻结)

跟踪:

File "c:\python\32-bit\3.4\lib\threading.py", line 921, in _bootstrap_inner
File ".\tempCheckout\CanPy\CanAsync.py", line 400, in run
File ".\tempCheckout\CanPy\CanAsync.py", line 483, in _connect
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
File ".\tempCheckout\CanPy\CanSsh.py", line 1, in <module>
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
File ".\tempCheckout\CanPy\CommUtil\SshTunnel.py", line 1, in <module>
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
zipimport.ZipImportError: can't decompress data; zlib not available
文件“c:\python\32位\3.4\lib\threading.py”,第921行,在\u bootstrap\u内部
文件“\tempCheckout\CanPy\CanAsync.py”,第400行,正在运行
文件“\tempCheckout\CanPy\CanAsync.py”,第483行,在连接中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2237行,在查找和加载中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2226行,在“查找”和“加载”中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1191行,在\u load\u unlocked中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1161行,与“加载\向后”兼容
文件“\tempCheckout\CanPy\CanSsh.py”,第1行,在
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2237行,在查找和加载中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2226行,在“查找”和“加载”中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1191行,在\u load\u unlocked中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1161行,与“加载\向后”兼容
文件“\tempCheckout\CanPy\conversitil\SshTunnel.py”,第1行,在
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2237行,在查找和加载中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第2226行,在“查找”和“加载”中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1191行,在\u load\u unlocked中
文件“c:\python\32位\3.4\lib\importlib\\u bootstrap.py”,第1161行,与“加载\向后”兼容
zipimport.ZipImportError:无法解压缩数据;zlib不可用
此外,我发现这似乎是相关的:


假设我的Python3.4应用程序正在使用两个依赖于zlib的外部库,并且它的使用有一个锁。这些库不在Python2.7中,因此我不认为有什么问题。如果我可以停止异步加载这些库,那么我可能会解决这个问题。

好的,我的假设似乎是正确的。正在以两个线程加载库。等到第一个线程导入第二个线程之前,似乎已经解决了这个问题。(虽然我可能只是改变了相对时间,但如果事实证明是这样,我会更新)。针对这些说明:

1-Python2.7应用程序没有加载zlib,因此这是一个转移视线的问题


2-我认为.pyw中的计时一定是这样的,以至于问题没有发生。

您可以添加完整的跟踪吗?
File "c:\python\32-bit\3.4\lib\threading.py", line 921, in _bootstrap_inner
File ".\tempCheckout\CanPy\CanAsync.py", line 400, in run
File ".\tempCheckout\CanPy\CanAsync.py", line 483, in _connect
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
File ".\tempCheckout\CanPy\CanSsh.py", line 1, in <module>
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
File ".\tempCheckout\CanPy\CommUtil\SshTunnel.py", line 1, in <module>
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
File "c:\python\32-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
zipimport.ZipImportError: can't decompress data; zlib not available