OK, also ich schreibe eine App, die Musik mit den pyGST Bindungen spielt.mit Threads und pyGST in einer Wx Python App
Dies erfordert die Verwendung von Threads für die Wiedergabe. Die Bindings-Bibliothek übernimmt den Großteil der Thread-Kontrolle für mich, was nett ist (und was ich darin gesucht habe).
Jetzt habe ich dieses Konzept nicht mehr im Griff, daher würde ich mich auf einige Referenzen freuen. Aber so wie ich es verstehe, muss ich die App grundsätzlich darüber informieren, dass sie mehrere Threads verwenden kann.
Ich sammelte diese vom examples auf dem gstreamer Ort, wo sie diesen Aufruf benutzen:
gtk.gdk.threads_init()
gtk.main()
nach here, das die App sagt es kann mehrere Threads verwenden (mehr oder weniger), die in dem meine obige Annahme kam von.
Das ist der Hintergrund. Jetzt hol dir das. Ich habe diese Zeilen in meinen Code eingefügt, und sie funktionieren gut. Meine App spielt Musik ab und stürzt nicht ab, wenn sie es versucht. Aber etwas fühlt sich nicht richtig an.
In den Beispielen, aus denen ich diese Zeilen habe, verwenden sie gtk für die gesamte GUI, aber ich möchte wxWidgets verwenden, also fühlt es sich falsch an, diese gtk-Funktion dazu aufzurufen.
Gibt es ein Wx-Äquivalent? oder ist es in Ordnung, dies zu verwenden, und wird es weiterhin plattformübergreifend funktionieren?
Auch ich muss herausfinden, wie alle diese Threads beim Beenden (was es nicht gerade tut) Ich sehe, wie sie es im Beispiel mit einer gtk-Methode wieder tun, so wieder, auf der Suche nach einem Wx gleichwertig.
PS: Ich denke, dass dies (oder die Lösung) mit der Funktion wx.App.MainLoop() verwandt sein kann, aber ich bin verloren zu versuchen, zu verstehen, wie diese Schleife funktioniert, also wieder gute Hinweise dazu wäre geschätzt, aber ich denke nicht notwendig, solange ich eine gute Lösung habe.
Ich denke, das löst das. es impliziert, dass es keinen Unterschied macht, ob ich die gtk-Methode oder die gobject-Methode verwende. aber gut. – gnomed