|
|
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Заинтересовал вопрос. Есть функция которая использует синхронизацию. Код: java 1. 2. 3. 4. 5. 6. 7. Возможно что в момент каких-то действий с session, до добавления в HashMap другой поток "войдет" в эту функцию и до synchronized блока изменит ссыку на session? В таком случае в HashMap будет добавлена уже другая ссылка? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2013, 13:11 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
То есть, войдет в метод, и изменит его аргумент? Нет, такое невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2013, 13:15 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
cdtyjvТо есть, войдет в метод, и изменит его аргумент? Нет, такое невозможно. Точно? Потому как проблема есть, что не все session есть в HOSTS_SESSIONS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2013, 13:28 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
Возможно проблема и не в этом. Но меня терзают смутные сомнения :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2013, 13:28 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
И все же. Будут еще мнения? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 03:50 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
Ссылки находятся в стеке, который у каждого вызова свой, а не в методе, поэтому различные вызовы, в обращении с локальными ссылками метода никак не пересекаются. Однако session.getSessionId() несомненно может измениться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 14:13 |
|
||
|
Что будет в этом случае?
|
|||
|---|---|---|---|
|
#18+
Аргументы метода передаются через стек, у каждого потока свой собственный стек. Теоретически, можно попортить и чужой стек, но это не такая тривиальная задача. Так что аргументы вашей функции скорее всего защищены. А вот что за таблица Hub.HOSTS_SESSIONS - неизвестно, вполне возможно, именно она не защищена от конкурентной записи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 14:25 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38515315&tid=2127884]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
154ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 491ms |

| 0 / 0 |
