0
main() {
     /* code calling another class method   
    that use multi-threading*/ // A block

    sysou("print");    //B block
}

Aブロックが最初に処理され、次にBブロックが実行され、Aブロックの残りのスレッドが実行されたとしても、現在の方法です。

A ブロックで作成されたすべての踏み板の実行が終了した後で、B ブロックを実行したいと考えています。

4

1 に答える 1

3

CountDownLatchの使用を検討してください。これは、この目的のために明示的に構築されました。

API ごと:

1 つ以上のスレッドが、他のスレッドで実行されている一連の操作が完了するまで待機できるようにする同期支援。

于 2013-10-15T19:44:50.550 に答える