なんてナンセンスだと思う? しかし、テーマ別ブログシステムプログラミングの常連は、それが何であるかについてすでに気づいています。 並列プログラミングに直面している人は、状況は痛みに馴染んでいます-これは典型的なデッドロックです。
昨年、Intel Software Networkで「 指で説明する 」コミックコンテストを開催しました。いくつかの「特別な」用語についてとんでもない説明をする必要がありました。 人々は素晴らしい時間を過ごしました! ここでも私は本当に好きでした:
「ホッケーのジャッジが次の5の変更中にプレーヤーの数が過剰にならないように制御する場合、つまりスポーツウェアの場合、チーム全体がコーチ、マッサージ師、スケートグラインダーのアンシャヴァシャが率いる氷の上にジャンプしませんでした」
用語を推測? (habrakatの下で回答)。
ロシアの中央部は暑く、ほとんど乾燥していたので、デバッガーから少し注意をそらし、楽しい時間を過ごすことにしました。 だから、「指で説明するv2.0」-解釈のための新しい用語集、そしてもちろん、最も機知に富んだ賞-Lenovo IdeaPadネットブック。
ホッケーの裁判官は、もちろん、セマフォです。 そして、これが過去のコンテストの最良の説明のリストです 。
2番目のバージョンでは、同僚と私はさらにいくつかの抽象的な概念を取り上げました。
- データ分解と機能分解
- SIMDおよびMIMD
- マルチタスクとマルチスレッド
- 使用中の待機スレッドとスリープスレッド
- スレッドプール
- コンテキスト切り替え

すでにオプションがありますか? その後、 フォーラムへようこそ。 でも...ちょっと待ってください。 私は、ユーモアのセンスが競技会に参加するための前提条件であると言うことを忘れませんでしたか? 言った? 次に、他の条件について説明する必要があります。説明は非常に短く、非常に正確でなければなりません。 つまり、あなたの祖母でさえ、マルチタスクとマルチスレッドの違いを理解できるのです。
タスクは見た目ほど単純ではないことを言わなければなりません。 たとえば、スレッドプールを考えてみましょう。 コールセンターとの類推がすぐに思い浮かぶでしょうか? しかし、厳密に言えば、スレッドの作成と削除のコスト、この場合は従業員を仕事に呼ぶコストを削減するためだけに、スレッドプールが発明されたことを何らかの形で説明する必要があります。 念のため...これは私です。まあ、この説明にユーモアのセンスがあるので、私見はかなり弱いです。
ステレオタイプを破り、最も過酷なプログラマーでさえユーモアと創造性の感覚を持っていることを証明しましょう!
「 指の説明v2.0 」
皆さんに幸運を!