Pythonインタビューの質問7(マルチスレッド、マルチプロセス)

プロセス:

1.オペレーティングシステムによるリソース割り当てとスケジューリングの基本単位。複数のプロセスは互いに独立しています。

2.優れた安定性。プロセスがクラッシュしても、他のプロセスには影響しませんが、プロセスは多くのリソースを消費し、開いているプロセスの数は制限されます。

スレッド:

1. CPUリソース割り当ておよびスケジューリングの基本単位。スレッドはプロセスの一部です。これは、独立して実行できる小さな基本単位です。プロセスの下の複数のスレッドは、プロセスのすべてのリソースを共有できます。

2. IO操作が集中している場合、マルチスレッドを高効率で実行できますが、欠点は、スレッドがクラッシュするとプロセスがクラッシュすることです。

アプリケーション:

マルチスレッドのIO集中型使用、ユーザー入力中、スリープ中、実行のために他のスレッドに切り替えて、待機時間を短縮できます。

複数のプロセスをCPUで集中的に使用します。これは、IO操作がほとんどなく、複数のスレッドがある場合、スレッドがグローバルインタープリターロックを共有するため、現在実行中のスレッドがGILを占有し、GILのない他のスレッドはマルチコアCPUを十分に活用できないためです。

元の記事を公開44件 ・いい ね0件 訪問数1226

おすすめ

転載: blog.csdn.net/weixin520520/article/details/105336250