【问题标题】:Global Interpreter lock: Jython vs CPython全局解释器锁:Jython 与 CPython
【发布时间】:2017-03-11 19:49:06
【问题描述】:

CPython使用GIL防止互斥等问题。但是,结果是解释器无法利用多核 CPU。我还了解到Jython 不需要 GIL,因为它的实现已经是线程安全的。

这是否意味着 Jython 在并发编程和利用多核 CPU 方面是一种出色的实现?

【问题讨论】:

  • 你想做什么?
  • @roganjosh 在设计多线程应用程序时,我只是好奇 Jython 是否比 CPython 更好。

标签: python multithreading jvm jython gil


【解决方案1】:

是的,Jython 使用 Java 线程(即使您使用的是 Python 的线程模块),因此它没有 GIL。但这不是答案(否则它必须是 42,因为问题不清楚 :^))。 更好的问题是,你有什么标准,如果 CPython 或 Jython 会更好。

如果您想要真正的多线程,那是您的事。 如果您想使用 Java 和 Python,请使用它。 如果您想要更快的执行时间......那么其他语言可能会更好(您可以尝试在 Python 中的线程任务和 Jython 中的相同代码中弄乱时间,但我想即使使用 GIL CPython 也会更快)。

您好, 宗克

【讨论】:

    猜你喜欢
    • 2011-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-26
    • 1970-01-01
    • 2010-09-20
    相关资源
    最近更新 更多