|
|
|
Синхронизация доступа к данным
|
|||
|---|---|---|---|
|
#18+
В Java можно перед функцией написать synchronized и тем самым гарантировать синхронизацию между двумя потоками работающие с одним набором данных. Как тоже самое сделать на Transact SQL? Алгоритм работы процедуры у меня следующий Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2002, 11:34:25 |
|
||
|
Синхронизация доступа к данным
|
|||
|---|---|---|---|
|
#18+
В СУБД (не только MSSQL) для этого используются транзакции и блокировки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2002, 12:04:34 |
|
||
|
Синхронизация доступа к данным
|
|||
|---|---|---|---|
|
#18+
Я вкурсе, что есть транзакции и блокировки;) Тогда если не сложно прокоментируйте растановку блокировок Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2002, 12:33:32 |
|
||
|
Синхронизация доступа к данным
|
|||
|---|---|---|---|
|
#18+
Сразу хочу сказать, что с курсорами работаю очень мало, так что подробно смотрите документацию. А что означает synchronized - нужно, что-бы в этот код можно было зайти только одному потоку? Тогда ваш код это делает: select @LastCreateTime = LastCreateTime from Table1 (ROWLOCK) where Id = @Table1Id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2002, 13:32:34 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3383&tid=1819030]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
33ms |
get tp. blocked users: |
2ms |
| others: | 197ms |
| total: | 304ms |

| 0 / 0 |
