|
|
|
Завершение всех потоков
|
|||
|---|---|---|---|
|
#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&msg=38315953&tid=2129072]: |
0ms |
get settings: |
14ms |
get forum list: |
24ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
49ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 300ms |
| total: | 483ms |

| 0 / 0 |
