【python】tkinter使用多进程打包成exe后multiprocessing无法关闭对应进程

这是由于multiprocessing模块在Windows操作系统下使用fork方法创建子进程时会导致打包成exe后无法正常运行的问题。

可以尝试使用freeze_support函数来解决这个问题。freeze_support函数是在Windows操作系统下用于支持multiprocessing模块的函数。

下面是一个示例代码:

python 复制代码
import multiprocessing
from multiprocessing import Pool, freeze_support

def worker():
    print('Worker')

if __name__ == '__main__':
    freeze_support()
    p = Pool(4)
    p.apply_async(worker)
    p.close()
    p.join()

在代码的开头,我们导入了freeze_support函数。然后,我们在if name == 'main':条件下调用了freeze_support函数。这样,在Windows操作系统下打包成exe后,multiprocessing模块就能够正常运行了。

注意,freeze_support函数只需要在Windows操作系统下调用,对其他操作系统没有影响。所以,你可以在代码中加入一个判断,只在Windows操作系统下调用freeze_support函数。

相关推荐
2601_962174174 分钟前
Spring 核心技术解析【纯干货版】- XI:Spring 数据访问模块 Spring-Oxm 模块精讲
数据库·python·spring
Brilliantwxx12 分钟前
【C++】初入嵌入式C++复习-----经典面试题100道
开发语言·c++·算法·面试·职场和发展
海兰12 分钟前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(二)
javascript·python·金融
Freak嵌入式21 分钟前
告别死循环!Pico 外部中断控制 LED,比轮询高效 100 倍
java·开发语言·stm32·单片机·嵌入式硬件
nangonghen22 分钟前
Agent如何传递不同类型的ID给MCP Server
开发语言·python
weixin_3988316625 分钟前
佛山AI推广GEO哪家做的专业
人工智能·python
luj_176834 分钟前
断舍离中的项目管理智慧
c语言·开发语言·c++·经验分享·算法
taller_200036 分钟前
【006】何时用 Python?何时用 Excel 公式?一文讲清
python·excel·公式·pie·py
老王爱玩车39 分钟前
关于函数递归的优缺点分析
开发语言·数据结构·学习·算法
2601_962381581 小时前
物联网场景下的 Python 边缘计算轻量化方案解析与实战落地
python·物联网·边缘计算·数据处理·轻量化方案