Из ссылки Jweede отправил:
исключение socket.timeout:
This exception is raised when a timeout occurs on a socket which has had timeouts enabled via a prior call to settimeout(). The accompanying value is a string whose value is currently always “timed out”.
Вот демонстрационный сервер и клиентские программы для модуля сокета от документы Python
# Echo server program
import socket
HOST = '' # Symbolic name meaning all available interfaces
PORT = 50007 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
И клиент:
# Echo client program
import socket
HOST = 'daring.cwi.nl' # The remote host
PORT = 50007 # The same port as used by the server
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send('Hello, world')
data = s.recv(1024)
s.close()
print 'Received', repr(data)
На странице документов в качестве примера я вытянул их от, существуют более сложные примеры, которые используют эту идею, но вот простой ответ:
Принятие Вы пишете клиентскую программу, просто поместите весь свой код, который использует сокет, когда это подвергается риску отбрасываться в блоке попытки...
try:
s.connect((HOST, PORT))
s.send("Hello, World!")
...
except socket.timeout:
# whatever you need to do when the connection is dropped
На уровне этой папки вы можете добавить атрибут svn: ignore для * (AKA, игнорировать все, что находится под этой папкой). Таким образом, разработчики могут проверить папку, но все, что они помещают в нее, не будет возвращено в ваш репозиторий.
Чтобы сделать это в Tortoise SVN:
Щелкните правой кнопкой мыши папку> Tortoise SVN> Свойства> Создать ...
Установите имя свойства на svn: ignore и значение на *. Применяйте свойство рекурсивно.
Добавьте папку в Subversion и присвойте ей атрибут svn: ignore, установленный на *.
*
если у вас что-то есть в системе управления версиями, вы не можете игнорировать это впоследствии (в любом случае, зачем вам это).
Обычно вы запрашиваете файлы конфигурации, лучше всего создать config.template. файл и иметь настоящий файл конфигурации в свойстве svn: ignore.
если вы просто хотите, чтобы папка никогда не игнорировалась, поместите его в svn: ignore. но он не будет создан для вас. чтобы создать папку, вы можете использовать какой-нибудь сценарий оболочки (или пакетный сценарий), чтобы сделать это за вас