Forum: PC-Programmierung Vererbung Python3


von Ralf (Gast)


Lesenswert?

Hallo,

ich baue mir gerade eine Klasse und möchte damit auf die 
threading-Klasse zurückgreifen.

Meine Syntax sieht so aus:
1
import time
2
from threading import Thread, Event, Lock
3
4
5
class myClass(Thread, Event):
6
    
7
    __waiting=Lock()  
8
    _activeDevices = 0
9
    
10
    def __init__(self, name=None, function=None, setUp=None, setDown=None):
11
        Thread.__init__(self)    
12
....

Mit Python 3.5.3 funktioniert das Ganze auch. Mit Python 3.2.3 bekomme 
ich allerdings die folgende Fehlermeldung:
1
 
2
File "meineKlasse.py", line 5, in <module>
3
 class myClass(Thread, Event):
4
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases

Kann mir evtl. jemand helfen?

: Verschoben durch Admin
von Kaj (Gast)


Lesenswert?


von MaWin O. (Gast)


Lesenswert?

Ralf schrieb:
> class myClass(Thread, Event):

Es ist eigentlich nur bedingt sinnvoll von Threading und Event 
abzuleiten.
Tue das nicht und dein Problem erledigt sich.

von Rolf M. (rmagnus)


Lesenswert?

Ma W. schrieb:
> Es ist eigentlich nur bedingt sinnvoll von Threading und Event
> abzuleiten.

Auch mein Gedanke. Was soll das für ein Objekt sein, das gleichzeitig 
ein Thread und ein Event ist?

von Sheeva P. (sheevaplug)


Lesenswert?

Rolf M. schrieb:
> Ma W. schrieb:
>> Es ist eigentlich nur bedingt sinnvoll von Threading und Event
>> abzuleiten.
>
> Auch mein Gedanke. Was soll das für ein Objekt sein, das gleichzeitig
> ein Thread und ein Event ist?

Na entweder ein Threadevent oder ein Eventthread, ist doch klar.

SCNR ;-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.