First page Back Continue Last page Overview Image

Lösung mit Threads (1)

import os, re, threading

class ip_check(threading.Thread):

def __init__ (self,ip):

threading.Thread.__init__(self)

self.ip = ip

self.__successful_pings = -1

def run(self):

ping_out = os.popen("ping -q -c2 "+self.ip,"r")

while True:

line = ping_out.readline()

if not line: break

n_received = re.findall(received_packages,line)

if n_received:

self.__successful_pings = int(n_received[0])

def status(self):

if self.__successful_pings == 0:

return "no response"

elif self.__successful_pings == 1:

return "alive, but 50 % package loss"

elif self.__successful_pings == 2:

return "alive"