|
|
|
Завершение всех потоков
|
|||
|---|---|---|---|
|
#18+
Добрый день. В методе main запускается несколько потоков. После того как все потоки запущены, надо приостановить метод main и подождать когда все потоки завершат свою роботу. Только после этого продолжить метод main. Будет ли нормально если собрать все потоки в масив, а после того как они были запущение, для каждого из них вызвать метод join? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2013, 15:59:29 |
|
||
|
Завершение всех потоков
|
|||
|---|---|---|---|
|
#18+
denis111111Добрый день. В методе main запускается несколько потоков. После того как все потоки запущены, надо приостановить метод main и подождать когда все потоки завершат свою роботу. Только после этого продолжить метод main. Будет ли нормально если собрать все потоки в масив, а после того как они были запущение, для каждого из них вызвать метод join? Смотря какая задача, если утилитка - то можно не заморачиваться и сделать так, если претендует на продакшен код и хочется сделать по-правильному, то надо использовть ExecutorService ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2013, 16:01:30 |
|
||
|
Завершение всех потоков
|
|||
|---|---|---|---|
|
#18+
Executors + Future.get() Вот тут ещё несколько рецептов http://stackoverflow.com/questions/1250643/how-to-wait-for-all-threads-to-finish-using-executorservice Вообще звучит это всё как Fork/Join http://docs.oracle.com/javase/tutorial/essential/concurrency/forkjoin.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2013, 16:09:32 |
|
||
|
|

start [/forum/topic.php?fid=59&gotonew=1&tid=2129072]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
145ms |
get topic data: |
12ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 293ms |
| total: | 566ms |

| 0 / 0 |
