|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.12.2010, 02:25 | #1 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
TCP сервер и несколько клиентов.
Здравствуйте.
Интересен следующий вопрос со стороны принципа работы. Допустим к серверу подключен один клиент он делает запрос на предоставление ему записей сервер его обрабатывает и подгружает данные из базы допустив dataset например 10 записей и начинает их из датасета передавать по одной. в это время подключается второй пользователь и выполняет такой же запрос и тоже начинает получать записи вопрос в следующем сервер для каждого клиента создает свой поток что произойдет в таком случае он автоматом создаст копии датасета и каждому клиенту будут передаваться его данные или обратится к одному и тому же дата сету и в лучшем случае передаст не те данные |
14.12.2010, 03:14 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вы создаете новый датасет на каждого клиента или нет?
сервер вообще не знает что и как вы там делаете, он вам дает сокет и все.(и поток для обработки этого подключения) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
14.12.2010, 03:50 | #3 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
нет не создаю.
То есть нужно делать так при подключении пользователя в событии OnConnect мы создаем ему все то что необходимо ему для работы и все будет норм я правильно понимаю? То есть если у меня подключится 10 пользователей то и динамично мы создаем 10 DatSet'of а по отключению уничтожаем |
14.12.2010, 03:55 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
в общем то да.
главное синхронизируйте сокет и датасет, чтоб не путать что удалять Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
14.12.2010, 04:01 | #5 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
а как можно перепутать каждый пользователь имеет свой ип и свой номер этот номер присваивается дата сету и каждый работает со своим. Или не все так просто и придется возится с синхронизацией?
|
14.12.2010, 09:42 | #6 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
Есть компонент который за вас все создает и удаляет.... притом он стандартный... по этому просто обрабатывайте сонект и все.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
15.12.2010, 02:12 | #7 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
|
23.12.2010, 15:49 | #8 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
IdSchedulerOfThreadDefault1
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
26.12.2010, 19:48 | #9 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Немного не в тему.
Как можно получить количество подключенных пользователей и их ID ? Все, понял, делаю так: Код:
Последний раз редактировалось ZBEP; 26.12.2010 в 20:20. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как создать TCP клиент, TCP сервер ? | DreamMaster911 | C/C++ Сетевое программирование | 1 | 26.10.2010 15:05 |
Сервер с кучка клиентов | kvantec | Помощь студентам | 0 | 14.04.2010 20:51 |
Один сервер и несколько клиентов: организация передачи файлов | evgenidem | Работа с сетью в Delphi | 0 | 23.11.2009 11:26 |
tcp сервер | Pall | Работа с сетью в Delphi | 5 | 02.12.2008 15:35 |
Сервер и несколько клиентов | Andr | Работа с сетью в Delphi | 10 | 17.09.2007 09:24 |