Mein Verständnis dieser Methoden sind:Methode vs __init__ in einer Python-Klasse
__init__()
wie Konstruktor ist.run()
wird aufgerufen, wenn ein Thread für diese Klasse gestartet wird.
Aber warum brauchen wir eine Run-Methode? Könnten wir ein Objekt der Klasse instanziiert haben und alle Initialisierungen bleiben in __init__()
?
Ich bin durch this article gegangen, konnte nicht viel daraus machen Können Sie bitte einige Erkenntnisse dazu teilen?
Um die Initialisierung (die für jede Instanz auftritt) von Code zu unterscheiden, der in einem separaten Thread ausgeführt werden soll (der in die run-Methode übernommen wird). – pvg
Danke allen !! Also __init__ ist für die Initialisierung und wird im Hauptthread ausgeführt, wobei die run-Methode über die gesamte Lebensdauer des untergeordneten Threads verfügbar ist. – prat
Nein, sie sind beide nur Methoden. __init__ ist eine "magische Methode" zur Initialisierung von Instanzen. Das Python-Threading-Modul kann Ihre run-Methode (aber auch jede andere Methode) aufrufen, wenn es einen neuen Thread instanziiert. – pvg