Ich hab da ein Problem mit dem pickle Modul. Ich erklär euch mal kurz grob woran ich arbeite, damit ihr den Sachverhalt versteht was ich mache: Ich versuche gerade Python-Prozesse zu parallelisieren. Dafür möchte ich gerne bestimmte Objekte in eine Queue stecken, die dann von "Workern" ausgeführt werden sollen. Soweit so gut.
Nun hab ich eine Klasse die "semMat" heißt, und mehrere Funktionen besitzt(mathematisches Zeug, unwichtig). Ich möchte diese Klasse nun aber per pickle.dumps() picklen, und die dann in "gepickled" in die Queue schieben(denn so verlangt es diese Queue ja), und die dann nach dem rausholen aus der Queue wieder laden(mittels pickle.loads()). Nun hab ich das Problem das ich beim laden diesen Error bekomme:
Code: Alles auswählen
AttributeError Traceback (most recent call last)
/home/walter_cits/workspace/sage/<ipython console> in <module>()
/opt/software/sage-4.8/local/lib/python2.6/site-packages/sage/misc/preparser.pyc in load(filename, globals, attach)
1645 else:
1646 # Preparse in memory only for speed.
-> 1647 exec(preparse_file(open(fpath).read()) + "\n", globals)
1648 elif fpath.endswith('.spyx') or fpath.endswith('.pyx'):
1649 import interpreter
/home/walter_cits/workspace/sage/<string> in <module>()
/opt/software/sage-4.8/local/lib/python/pickle.pyc in loads(str)
1372 def loads(str):
1373 file = StringIO(str)
-> 1374 return Unpickler(file).load()
1375
1376 # Doctest
/opt/software/sage-4.8/local/lib/python/pickle.pyc in load(self)
856 while 1:
857 key = read(1)
--> 858 dispatch[key](self)
859 except _Stop, stopinst:
860 return stopinst.value
/opt/software/sage-4.8/local/lib/python/pickle.pyc in load_inst(self)
1067 module = self.readline()[:-1]
1068 name = self.readline()[:-1]
-> 1069 klass = self.find_class(module, name)
1070 self._instantiate(klass, self.marker())
1071 dispatch[INST] = load_inst
/opt/software/sage-4.8/local/lib/python/pickle.pyc in find_class(self, module, name)
1124 __import__(module)
1125 mod = sys.modules[module]
-> 1126 klass = getattr(mod, name)
1127 return klass
1128
AttributeError: 'FakeModule' object has no attribute 'semMat'
Beste Grüße
nablahero