0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 3

Как при отключении клиента переводить сервер в режим ожидания?

08.10.2013, 19:45. Показов 5889. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте форумчане, имеется проблемка,я написал клиентскую часть на c# а вот серверную решил написать на python, и столкнулся с тем, что при отключении клиента, закрытии сокета, образуется эксепшен и программа крашится, как обрабатывать исключения я так и не понял, помогите сделать так чтобы при закрытии сокета клиентом, сервер переходил в режим ожидания клиента снова.
вот мой код

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import socket
import sys
import RPi.GPIO as GPIO
 
sock = socket.socket()
sock.bind(('', 9090))
sock.listen(1)
conn, addr = sock.accept()
 
print 'connected:', addr
 
while True:
    data = conn.recv(1024)
    print(data)
    
conn.close()
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.10.2013, 19:45
Ответы с готовыми решениями:

Падает сервер при отключении клиента
Реализую локальный чатик на boost/asio, принцип работы: клиент отправляет запрос серверу на подключение, затем имя, если все успешно то в...

Вылетает сервер при отключении клиента (Boost)
Здравствуйте, пишу клиент-серверное приложение и столкнулся с проблемой: у меня есть сервер и клиент, если все делать по...

как исправить ошибку при отключении клиента от сервера
Доброго времени суток гос-да программисты. Есть примеры кода клиент-сервер. Всё работает, но при отключении клиента ("Стоп")...

4
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
08.10.2013, 21:23
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
 
import socket
 
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind(('', 9090))
sock.listen(1)
 
while True:
    conn, addr = sock.accept()
    print 'connected:', addr
 
    while True:
        data = conn.recv(1024)
        if not data:
            break
        print data
    conn.close()
0
0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 3
09.10.2013, 06:13  [ТС]
тот код что вы дали так же крашится при закрытии клиента, сперва все нормально коннект удается и данные идут строка "stop", а когда я закрываю клиент - крашится. скрин прилагаю
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
09.10.2013, 06:28
у меня всё работает (УМВР)

проверял на этом
Bash
1
while true; do echo test; done | nc localhost 9090
0
0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 3
10.10.2013, 16:26  [ТС]
Я понял из за чего у меня выдавал exeption, я просто закрывал программу,а когда сделал
Python
1
socket.close()
все отлично отключилось, и работает повторно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.10.2013, 16:26
Помогаю со студенческими работами здесь

Поставить сервер в режим ожидания нескольких клиентов
Здравствуйте. Суть программы в том,что она считает количество символов встречаемых в текстовом файле,но работает только с одним...

UdpClient. Смена порта при отключении клиента
Странное поведение клиента. private static IPEndPoint m_endpoint = new IPEndPoint(IPAddress.Any, 2310); private...

Asynchronous socket error 10053 при отключении клиента
Собсна, всё работает, клиент отправляет сообщение серверу, сервер принимает успешно. Но при отключении клиента от сервера, у сервера...

Как сделать, чтоб при отключении электроэнергии в сети и переводе энергии на аккумулятор, сервер сам выключался не аварийно
Сервер windows 2008 r2 подключен к ИБП как сделать, чтоб при отключении электроэнергии в сети и переводе энергии на аккумулятор, сервер сам...

Стоечный ИБП Smart-UPS SMT 1500 при отключении от сети перескакивает с режима в режим
Дано: Стойка с ИБП Smart-UPS SMT 1500 + дополнительные аккумуляторные блоки APC Smart-UPS RT При пропадании питания сети 220 В,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru