|
|
|
ещё раз про то почему Thread. stop небезопасен
|
|||
|---|---|---|---|
|
#18+
Начну с того, что как остановить поток мне известно. Хочу понять почему Thread. stop небезопасен. Гугл говорит, что анлочатся какие то локи, кидается ThreadDeathException, из за этого у кого то неконсистентные состояния. А можно как то понятнее мне объяснить, с примерами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2015, 14:17 |
|
||
|
ещё раз про то почему Thread. stop небезопасен
|
|||
|---|---|---|---|
|
#18+
questioner, Грубо говоря: есть два поля, которые обновляются синхронно: Код: java 1. 2. 3. 4. Thread.stop(); может быть вызван после обновления первого значения, и, как результат, второе будет в каком-то старом состоянии. Это в первом абзаце: https://docs.oracle.com/javase/6/docs/technotes/guides/concurrency/threadPrimitiveDeprecation.html Во втором объясняется почему ловить исключение в таких случаях тоже не удобно и не безопасно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2015, 14:32 |
|
||
|
ещё раз про то почему Thread. stop небезопасен
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Понял. спасибо. Кстати помнишь, недавно топик создавал про то как безопасно стопать трэд и цитировкал код из статьи с код гика. Так вот в приведенной ссылке такой же вариант) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 12:52 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=114&tid=2124742]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
| others: | 214ms |
| total: | 336ms |

| 0 / 0 |
