【发布时间】:2021-02-24 02:23:02
【问题描述】:
我在 python 上;我正在尝试关闭通过 ThreadPoolExecutor 运行的函数,但关闭时因错误而崩溃:
libgcc_s.so.1 must be installed for pthread_cancel to work
函数提交:
record_future = self.executor.submit(next,primitive)
primitive 是一个迭代器,通常会返回一个值,但在某些情况下,它需要等待一段时间才能返回一个值(因为计算时间长等)。在这些情况下,当我需要关闭正在运行的线程时,我不能等待迭代器完成返回,需要立即关闭它。我做到了:
executor.shutdown(wait=False)
但是,当执行到这一点时,我得到了 libgcc 错误。
我尝试通过手动安装来“解决”它:
apt-get install libgcc1:amd64
但没有骰子。我不确定python到底在哪里寻找这个库,否则我会尝试创建一个符号链接,因为该库已经安装在:
$ /sbin/ldconfig -p | grep libgcc
libgcc_s.so.1 (libc6,x32) => /usr/libx32/libgcc_s.so.1
libgcc_s.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libgcc_s.so.1
libgcc_s.so.1 (libc6) => /usr/lib32/libgcc_s.so.1
【问题讨论】:
标签: python threadpool threadpoolexecutor