![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Синхронизация потоков
max2057 © (2003-08-12 10:46:00)
Допустим, есть два потока-близнеца, например, запускаемые сервером для обслуживания клиентов. Каждый поток вызывает процедуру, которая что-делает с запросом. Так вот вопрос: они абсолютно независимо друг от друга работатют с процедурой или нужны средства синхронизации в этой процедуре?
Polevi (2003-08-15 14:30:00) [1]
>max2057 © (15.08.03 13:35) [7]
не используй общих ресурсов или синхронизируй доступ к ним
max2057 (2003-08-15 13:35:00) [2]
2 Verg-> большое спасибо
а где-нибудь можно почитать как писать потокобезопасный код?
например я хочу написать потокобезопасную библиотеку для работы с соединением, так чтобы потоки абсолютно независимоработали, используя эту библиотеку
Verg (2003-08-12 13:15:00) [3]
Синхронизация нужна при совместном доступе (прямом или косвенном) к общим данным/ресурсам несколькими потоками.
> Так вот вопрос: они абсолютно независимо друг от друга работатют
> с процедурой...
Т.е. вопрос поставлен некорректно - надо бы: абсолютно независимо друг от друга работатют
с данными
...
Сама же процедура и есть поток, при выполнении которого она была вызвана (по определению), таким образом и локальные переменные этой процедуры доступны только контексту этого потока и ни в какой защите от "посягательства" другими потоками не нуждаются.
panov (2003-08-12 13:14:00) [4]
Информации недостаточно для ответа.
Е-Моё имя (2003-08-12 13:06:00) [5]
ну тогда несомненно!!!!
совершенно точно!
max2057 (2003-08-12 12:59:00) [6]
процедура парсит запрос и формирует ответ, все необходимые переменные - локальные
Verg (2003-08-12 11:04:00) [7]
Смотря что и как делает эта процедура.
Reindeer Moss Eater (2003-08-12 10:48:00) [8]
так вот ответ: они могут работать как независимо, так и требовать синхронизации.