Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Еще раз про сервер и массив...   Найти похожие ветки 

 
NorthMan   (2006-01-11 14:30) [0]

Не понял, почему закрыли обсуждение, но вопрос остался.
Нужно ли делать синхронизацию, и если да, то как правильнее, когда клиенты подключаются к серверу и читают значение из массива (не весь массив).


 
Digitman ©   (2006-01-11 14:35) [1]


> NorthMan   (11.01.06 14:30)


> почему закрыли обсуждение


Потому что тебе про фому говорят, а ты все про ерему гнешь.

Каким образом твои клиенты умудряются "читать значения из массива", который объявлен и существует в совершенно другой программе ?

Продемонстрируй в коде ..


 
Slym ©   (2006-01-11 14:36) [2]

Синхронизация НЕОБХОДИМА при доступе к объекту из разных потоков, например критические секции (TCriticalSection из SyncObjs)


 
NorthMan   (2006-01-11 14:37) [3]

А в чем проблема?
В методе OnExecute сервера пишу перебор по элементам массива, найдя нужный, отдаю клиенту. Все. Или это чему-то противоречит?


 
Digitman ©   (2006-01-11 14:45) [4]


> В методе OnExecute сервера пишу перебор по элементам массива,
>  найдя нужный, отдаю клиенту. Все. Или это чему-то противоречит?
>


это противоречит хотя бы этому твоему утверждению :


> клиенты .. читают значение из массива


в методе OnExecute нет никаких "клиентов", код в теле метода - это код программы-СЕРВЕРА, а не программы-клиента.


 
NorthMan   (2006-01-11 15:04) [5]

Да я не спорю, все так, клиенты не причем. Неточно написал. Забудем про клиентов. Правильно ли будет в OnExecute выполнять перебор массива, или лучше вынести это в отдельную функцию и вызывать AThread.Synchronize(GetFromArray)?


 
Digitman ©   (2006-01-11 15:09) [6]

если предполагается, что размер и содержимое массива не изменяется на всем протяжении активности сервера, синхронизация не требуется.



Страницы: 1 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
9-1124299115
Malkavian
2005-08-17 21:18
2006.01.29
Что-то плохое происходит... :(


2-1137096976
tech
2006-01-12 23:16
2006.01.29
Неясна причина ошибки


9-1124145529
keal
2005-08-16 02:38
2006.01.29
Отсечение невидимых граней в OpenGL


9-1121634452
LexaDup
2005-07-18 01:07
2006.01.29
Линия видимости в GLSCene


15-1136617814
begin...end
2006-01-07 10:10
2006.01.29
С Днём рождения! 7 января