Как поставить клинтов в очередь

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Маленько разобрался как оно вообще работает.
Попробовал только на своём компе, с виртуальной машинрй конектится не хочет, ошибки вылезают.

И сразу же возникает вопрос, если будет клиентов больше чем 1 и если они одновременр начнут
передавать данные, то как сделать так что данные не смешивались.

Как сделать так чтобы сервер не принимал сообщение однрвременр с двух клинтовских машин.
А только послетого как первая машина закончит передачу данных.

Помогите пожалуйста!
 

vital

Больной Компом Детектед
29.01.2006
2 432
34
#2
По порядку..
1.
И сразу же возникает вопрос, если будет клиентов больше чем 1 и если они одновременр начнут
передавать данные, то как сделать так что данные не смешивались.
За это отвечает сам ServerSocket. А ты можешь обращаться к каждому клиенту отдельно через спец.свойство. Блин, не помню уже какое точно.. А из линуха возможности посмотреть нет. Вобщем там что-то в духе - Servsock.connections[номер нужного тебе соединения].что там тебе дальше нужно. RTFM Вобщем.
Т.е. Тебе при подключении нового клиента(есть событие такое OnClientConnected(или что-то в таком духе:))
нужно запоминать его номер. А потом просто обращаться как (примерно) написано выше.

2.
Как сделать так чтобы сервер не принимал сообщение однрвременр с двух клинтовских машин.
А только послетого как первая машина закончит передачу данных.
Исходя из первого ты понимаешь что это нафиг надо? Хотя, такое конечно можно реализовать. Примерно - при подключении нового клиента проверяешь есть ли у тебя другие активные соединения. Там (опять же не помню уже точно) свойство типа clientcount. Проверяешь его значение - если больше одного значит есть шлешь клиенту сообщение wait, иначе шлешь что-то другое(ready напр.). Клиент проверяет это сообщение и если это ready то послылает какие там нужно данные, если это wait то отключается и пробует через некоторое время. Если же нужна именно ОЧЕРЕДЬ т.е. обработка клиентов именно в том порядке в котором они подключаются, то там ещё веселее.. Сходу уже не скажу.

ЗЫ.
Сори за такой расплывчатый хелп. Но, думаю, теория ясна. А на практике авсоь сам сообразишь.
 
Статус
Закрыто для дальнейших ответов.