Seite 1 von 1

Performancefrage zu multiprocessing.Manager - dict

Verfasst: Freitag 10. Juli 2015, 21:20
von john21
Hallo zusammen,

ich habe eine Performancefrage, weil ich in mehreren Prozessen parallel etwas messe und nicht unnötig Leistung verschenken möchte.

Mein Quelltext (vereinfacht):

Code: Alles auswählen

mgr = multiprocessing.Manager()
config_dict = mgr.dict()

# ....

for func in tasks:
   p = multiprocessing.Process(target=func, args=(config_dict), )
   p.start()

innerhalb von func liest jeder Prozess zu Begin und später jede 0.1 Sekunden aus config_dict.
config_dict bleibt jedoch immer unverändert.

Meine Frage an Euch:
Habe ich einen Performanz Verlust wenn ich immer aus dem manager.dict() lese?
Oder ist es günstiger zu beginn in der Methode einfach die Sachen aus config_dict() in ein lokales Dictionary zu sichern?

Vielen Dank.