Threading und while
Verfasst: Dienstag 2. November 2021, 11:18
Ich habe folgenden Code:
import threading
class meinfred(threading.Thread):
ergebnis = [0,1]
def __init__(self, name, iD):
threading.Thread.__init__(self)
self.name = name
self.iD = iD
print("Hallo")
def run(self):
i = 0
while i < 20:
lockme.acquire()
zahl = meinfred.ergebnis[len(meinfred.ergebnis) - 2] + meinfred.ergebnis[len(meinfred.ergebnis) - 1]
meinfred.ergebnis.append(zahl)
lockme.release()
i = i+1
t1 = meinfred("thread1", 1)
t2 = meinfred("thread2", 2)
t3 = meinfred("thread3", 3)
lockme = threading.Lock()
t1.start()
t2.start()
t3.start()
t1.join()
t2.join()
t3.join()
print(meinfred.ergebnis[5])
und frage mich, wieso ich das i brauche. Ich hab es ohne versucht, aber wenn ich dann bei print(meinfred.ergebnis[]) über 5 gehe kommt nur, dass das out of range ist.
import threading
class meinfred(threading.Thread):
ergebnis = [0,1]
def __init__(self, name, iD):
threading.Thread.__init__(self)
self.name = name
self.iD = iD
print("Hallo")
def run(self):
i = 0
while i < 20:
lockme.acquire()
zahl = meinfred.ergebnis[len(meinfred.ergebnis) - 2] + meinfred.ergebnis[len(meinfred.ergebnis) - 1]
meinfred.ergebnis.append(zahl)
lockme.release()
i = i+1
t1 = meinfred("thread1", 1)
t2 = meinfred("thread2", 2)
t3 = meinfred("thread3", 3)
lockme = threading.Lock()
t1.start()
t2.start()
t3.start()
t1.join()
t2.join()
t3.join()
print(meinfred.ergebnis[5])
und frage mich, wieso ich das i brauche. Ich hab es ohne versucht, aber wenn ich dann bei print(meinfred.ergebnis[]) über 5 gehe kommt nur, dass das out of range ist.