python - 在Mac OSX上使用多处理时,IDLE崩溃

标签 python macos crash multiprocessing python-idle

如果我在Python 2.7.8的IDLE中运行此简单代码,它将弹出一个窗口,显示“程序仍在运行!您要杀死它吗?”。

from multiprocessing import Pool

def foo(x):
    return x**2

if __name__ == '__main__':
    pool = Pool(2)
    pows = pool.map(foo, range(10))
    print pows

即使我杀了还是不杀(它会问两次),都不会发生。我曾经使用Windows,最近刚开始使用Mac OSX(10.9.4),但我不知道我是否在这里缺少任何东西。

如果我直接在终端的Python Shell中运行相同的代码,它将运行良好。在iPython笔记本中相同。它将不会显示在IDLE上,然后弹出该消息框。

有任何想法吗?我想继续使用IDLE ...

这是日志:
INFO:root:10221: Started process
INFO:root:10221: Defined foo
INFO:root:10221: __name__ == '__main__'
INFO:root:10221: pool created

最佳答案

这是以前版本的Pycharm的一个已知问题。如果现在升级到最新版本,则可以在IDE的控制台中安全地使用多处理功能,而无需再运行此问题。

有关更多信息,请参见此处:https://youtrack.jetbrains.com/issue/PY-14969

关于python - 在Mac OSX上使用多处理时,IDLE崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24906099/

相关文章:

python - 将 networkx 图转换为 igraph 图时遇到问题

python - 将文件从Google Bucket加载到PyDub AudioSegment中

python - 如何使用 ctypes 从 Python 的结构中的指针访问数据?

ruby - 安装 RVM 时出现配置错误

java - Mac 是否需要 JDK(5 或 6)或 Eclipse 来开发 Android 应用程序?

ios - 一些用户遇到 NSInternalInconsistencyException 崩溃

ios - 执行展开时应用程序崩溃

Python:将多个 YAML 文档转换为 JSON

mysql - 使用macports安装mysql出错

objective-c - 应用核心图像过滤器 - 应用程序崩溃