Cliente TCP Python + hilos (2 / 3 paso)

Paso 2: sobre el programa

Creo que el código es auto contiene suficiente comentario para que aquellos con algunas habilidades de programación por lo menos pueden entender el flujo de todo el programa, si no todo el código, pero sólo para añadir una visión más clara

En primer lugar comencé un nuevo hilo que se ejecuta la función tcpConnect(), esta función intentará conectarse al puerto 5445 (me encanta este puerto) en el mismo equipo, la IP y puerto puede ser cambiado por el usuario, como socket.connect función producirá una excepción si la conexión falla, utilicé un intento salvo la to forma un método de reintento de conexión , por lo que el hilo se lazo hasta que la conexión se establece, entonces establecerá indicadores adecuados y comienza un nuevo hilo que se encarga de leer del socket, el hilo llamará a una función de devolución de llamada definido por el usuario cuando detecta una línea completa de datos termina con \r\n,

por ahora y en este proyecto sólo imprimimos los datos recibidos,

También implementó una clase timer que era responsable de llamar a una función de callback de tiempo de espera definido por el usuario en un intervalo especificado de usuario normal, en este tiempo de espera de devolución de llamada incrementan dos banderas HBCounter y HBSent, estas banderas se utilizan para identificar cuánto tiempo la red ha sido en ambos directions,i.e. de servidor a cliente y el cliente al servidor, usted puede preguntar ¿por qué necesitamos dos? porque queremos garantizar que la conexión es para arriba y saludable, y TCP a comprobarlo por defecto después de decir dos horas de inactividad, que es bastante tiempo, para que usar este mecanismo para reducir este tiempo a un valor aceptable,

Puede quitar el contador de tiempo para propósitos de la prueba, pero para tener un mayor nivel de fiabilidad que usted debe usar el temporizador, si el servidor que utiliza debe ser capaz de enviar paquetes de latido del corazón al cliente o el cliente caerá la conexión y establece una nueva uno después de que el temporizador de algunos basado en condición en el código se cumple ,

Artículos Relacionados

Frambuesa Pi movimiento sensible cámara

Frambuesa Pi movimiento sensible cámara

Usando un Raspberry Pi, un módulo de cámara de Raspberry Pi, un adaptador USB WiFi, un sensor de movimiento PIR, un puñado de piezas y un par de programas en Python, puede construir una cámara que será automáticamente tomar fotos o grabar vídeos cort
Construir tu Robot de Streaming de Video en Internet controlado con Arduino y frambuesa Pi

Construir tu Robot de Streaming de Video en Internet controlado con Arduino y frambuesa Pi

< el instructivo y el código están listos. ¡ Disfrute! Dejo un comentario Comentarios! >Yo soy (aka LiquidCrystalDisplay / Italia), un estudiante de 14 años de aprendizaje de Israel en el Max Shein secundaria para matemáticas y ciencia avanzada. Est
Monitor de Internet frambuesa Pi

Monitor de Internet frambuesa Pi

En mi casa, a menudo se puede escuchar alguien gritando "está el Internet?" A veces es pero la mayoría de las veces es un "usuario". Decidí construir un aparato que sería fácil de saber si la conexión a internet estaba funcionando o no
Puerto serie remoto Spark.IO

Puerto serie remoto Spark.IO

Puerto serie remoto Spark.io (repuestos) puede utilizarse para una variedad de tareas en un laboratorio, oficina o casa. Conecta un dispositivo con un puerto serial a la red local o internet mediante TCP/IP. Puertos serie están presentes en muchos di
El centro de automatización de frambuesa Pi-Arduino-SignalR hogar

El centro de automatización de frambuesa Pi-Arduino-SignalR hogar

Después de un par de mi preludio IBLEs publicado aquí y aquí, este proyecto toma el primer paso hacia la construcción de una versión básica de un funcional Inicio Centro de automatización.He utilizado varias tecnologías diferentes en un esfuerzo para
ESP8266 Gestión de archivo remoto WiFi OTA

ESP8266 Gestión de archivo remoto WiFi OTA

He estado trabajando con reguladores micro ESP8266 lo suficiente ahora para tener un número de ellos en mi entorno. Tengo un par setup prueba mi broker(s) MQTT. Tengo un par envío de temperatura, humedad y presión barométrica a la nube. Tengo algunos
Smart termómetro Personal con Arduino

Smart termómetro Personal con Arduino

Este instructable es preparado como parte de nuestra tarea para TfCD (tecnología para el diseño de concepto) el curso en TU Delft. Se prepara el siguiente instructivo:bo Koperdraat: 4209567Karthik Mahadevan: 4501578En este instructable aprenderá a co
Parpadeo de LED por PC remoto mediante WIZwiki-W7500 mbed para plataforma

Parpadeo de LED por PC remoto mediante WIZwiki-W7500 mbed para plataforma

Introduzco un LED blink control de PC remoto a través de la red (protocolo TCP).Un programa de cliente TCP se ejecuta en la PC y un servidor TCP se ejecuta en un tablero de WIZwiki-W7500 mbed para plataforma. W7500 transmite los datos a PC y recibe d
Un rover teléfono controlado (Edison Intel + Blynk + Arduino)

Un rover teléfono controlado (Edison Intel + Blynk + Arduino)

historia: (si eres demasiado vago para leer pase esto)Era mayo (año 2015). Un estudiante en su formulario 4 (10mo grado?) acaba de llegar de vuelta a casa desde la escuela y él enciende su computadora, como una rutina diaria, para comprobar los mensa
Rasberry Pi Alexa

Rasberry Pi Alexa

Este proyecto pretende convertir su ordenador $35 en un asistente de voz con servicio de voz de Alexa de Amazon. Como ahora Google y Siri, Alexa responderá a preguntas sobre el tiempo, su horario y más. Lamentablemente debido a las condiciones del se
Intel Edison, proximidad activados, calendario de habla

Intel Edison, proximidad activados, calendario de habla

(Encima es un Video - pero no puede mostrar en un teléfono móvil. Haga clic aquí para ver en youtube. )Este proyecto fue planeado como un Dispositivo de tecnología asistiva para cuidadores de personas con trastornos de la memoria. Es un calendario de
Sistema de riego inteligente

Sistema de riego inteligente

Este proyecto se crea para el 2015 de concurso de diseño de Digilent. Es un sistema de riego inteligente que controlado por una placa ChipKit MX3. La Junta es controlada por un dispositivo android, pero puede trabajar independiente. El sistema Compru
¿Wifly RN-XV módulo - Wireless Arduino Board Tutorial - Intro

¿Wifly RN-XV módulo - Wireless Arduino Board Tutorial - Intro

que siempre quisiste hacer tu arduino tiene capacidad inalámbrica? ¿Quería conectar el robot a su router inalámbrico para acceso a través de su red local? Sigue este pequeño tutorial que he puesto juntos y vas a estar en su camino en ningún momento!C
Cómo usar un escudo de WiFi serial - Arduino Tutorial

Cómo usar un escudo de WiFi serial - Arduino Tutorial

En este tutorial usted aprenderá cómo utilizar la WizFi210 - serie WiFi escudo con uno placa de Arduino. Este escudo de bajo costo wifi se puede conectar fácilmente a su red Wi-Fi y comunicarse con la placa de Arduino uno a través del Protocolo de co