bitte Helf suchen
Verfasst: Donnerstag 10. Januar 2008, 22:02
Hallo Leute,
ich habe ein Programm geschrieben aber geht s immer Problem.
Könnte jemand mir helfen und genau zeigen, wo das Problem liegt ?
Vielen Dank
Grüss
das Ziel:
Ziel dieser Aufgabe ist es Threads in Python zu realisieren. Programmieren Sie dazu eine Klasse
MyThread, welche von der Klasse Thread abgeleitet werden soll.
Bei der Instanziierung übergeben Sie ihrem Thread die folgenden Parameter: Seinen Namen, die
Anzahl der Iterationen, die er durchlaufen soll, und die Länge der Pause, die zwischen den Iterationen
liegen soll (in Minuten). Der Thread soll bei jedem Schleifendurchlauf seinen Namen, den Index
der aktuellen Iteration ausgeben sowie die aktuelle Uhrzeit (z.B. Thread_1: 2 von 5,
10:55:15). Danach soll der Thread die angegebene Zeit pausieren, bevor er den nächsten Schleifendurchlauf
startet.
Demonstrieren Sie die Funktion Ihres Threads mit den folgenden Aufrufen:
thread1 = MyThread(“MyThread_1“,4,0.2)
thread2 = MyThread(“MyThread_2“,5,0.3)
thread3 = MyThread(“MyThread_3“,2,0.4)
thread4 = MyThread(“MyThread_4“,2,0.5)
thread1.start()
thread2.start()
thread3.start()
thread4.start()
Wie könnten Sie die Threads testen und welche Probleme (Nebenwirkungen) können dabei auftreten?
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
mein programm
---------------------
ich habe ein Programm geschrieben aber geht s immer Problem.
Könnte jemand mir helfen und genau zeigen, wo das Problem liegt ?
Vielen Dank
Grüss
das Ziel:
Ziel dieser Aufgabe ist es Threads in Python zu realisieren. Programmieren Sie dazu eine Klasse
MyThread, welche von der Klasse Thread abgeleitet werden soll.
Bei der Instanziierung übergeben Sie ihrem Thread die folgenden Parameter: Seinen Namen, die
Anzahl der Iterationen, die er durchlaufen soll, und die Länge der Pause, die zwischen den Iterationen
liegen soll (in Minuten). Der Thread soll bei jedem Schleifendurchlauf seinen Namen, den Index
der aktuellen Iteration ausgeben sowie die aktuelle Uhrzeit (z.B. Thread_1: 2 von 5,
10:55:15). Danach soll der Thread die angegebene Zeit pausieren, bevor er den nächsten Schleifendurchlauf
startet.
Demonstrieren Sie die Funktion Ihres Threads mit den folgenden Aufrufen:
thread1 = MyThread(“MyThread_1“,4,0.2)
thread2 = MyThread(“MyThread_2“,5,0.3)
thread3 = MyThread(“MyThread_3“,2,0.4)
thread4 = MyThread(“MyThread_4“,2,0.5)
thread1.start()
thread2.start()
thread3.start()
thread4.start()
Wie könnten Sie die Threads testen und welche Probleme (Nebenwirkungen) können dabei auftreten?
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
mein programm
---------------------
Code: Alles auswählen
import threading
import time
class MyThread( threading.Thread ):
def __init__(self, message, anzahl, sleep):
self.message = message # thread id
self.anzahl = anzahl # Anzahl der Iterationen
self.sleep = sleep # Länge der Pause
threading.Thread.__init__(self)
def run(self):
for i in range(1, self.anzahl+1):
time_str = time.strftime(" %H:%M:%S", time.localtime())
print self.message, ":", i, " von ", self.anzahl," ", time_str
time.sleep(self.sleep*60.0)
thread1 = MyThread("MyThread_1", 4, 0.2)
thread2 = MyThread("MyThread_2", 5, 0.3)
thread3 = MyThread("MyThread_3", 2, 0.4)
thread4 = MyThread("MyThread_4", 2, 0.5)
thread1.start()
thread2.start()
thread3.start()
thread4.start()