擅长:python、mysql、java
<p>它们用于(稍微)不同的目的和/或要求。CPython(一个典型的主线Python实现)仍然具有<a href="https://wiki.python.org/moin/GlobalInterpreterLock" rel="noreferrer">global interpreter lock</a>,因此多线程应用程序(现在实现并行处理的标准方法)是次优的。这就是为什么<code>multiprocessing</code><em>可能比^{<cd2>>更受欢迎。但并不是每个问题都可以有效地分成[几乎独立的]部分,所以可能需要大量的进程间通信。这就是为什么<code>multiprocessing</code>通常不比<code>threading</code>更受欢迎的原因。</p>
<p><code>asyncio</code>(这种技术不仅在Python中可用,其他语言和/或框架也有它,例如<a href="http://www.boost.org/doc/libs/release/doc/html/boost_asio.html" rel="noreferrer">Boost.ASIO</a>)是一种有效处理来自多个同时源的大量I/O操作的方法,而不需要并行代码执行。所以这只是一个解决办法(确实是个好办法!)对于特定的任务,而不是一般的并行处理。</p>