J'ai une classe qui est opérée par deux fonctions. Une fonction crée une liste de widgets et écrit dans la classe:itérateurs python et sécurité de thread
def updateWidgets(self):
widgets = self.generateWidgetList()
self.widgets = widgets
les autres offres de fonction avec les widgets d'une certaine façon:
def workOnWidgets(self):
for widget in self.widgets:
self.workOnWidget(widget)
chacune de ces fonctions s'exécute dans son propre fil. la question est, que se passe-t-il si le thread updateWidgets()
s'exécute pendant que le thread workOnWidgets()
est en cours d'exécution?
Je suppose que l'itérateur créé dans le cadre de la boucle for...in
conservera une sorte de référence à l'objet ancien self.widgets? Je vais donc finir de parcourir l'ancienne liste ... mais j'aimerais bien le savoir.
bonne réponse, et de bons exemples. Merci! –