Tag: multithreading

QThread Aktualisierung der UI-Statusleiste?

Ich habe eine einfache pyqt gui, die ein qthread erstellt, um eine Datei zu öffnen und einige Informationen zu lesen. Ich möchte die Statusleiste meiner Gui aktualisieren. Normalerweise wäre dies mein Funktionsaufruf, um eine Nachricht auf der Statusleiste zu aktualisieren: class gui1(QtGui.QMainWindow): def __init__(self, parent=None): super(gui1, self).__init__(parent) self.statusBar().showMessage("hello world") … # create thread here self.mythread […]

Python-Subprocess-Popen inkonsistentes Verhalten in einer Multi-Thread-Umgebung

Ich habe folgendes Stück Code, das innerhalb des Fadens läuft. 'Executable' erzeugt einen einzigartigen String-Ausgang für jeden Eingang 'url': p = Popen(["executable", url], stdout=PIPE, stderr=PIPE, close_fds=True) output,error = p.communicate() print output Wenn der oben genannte Code für mehrfache Eingaben "urls" ausgeführt wird, ist der "Ausgabe" des Teilprozesses nicht konsistent. Für einige der URLs wird der […]

Das Ausführen von rpy2 parallel mit Multiprocessing hebt komische Ausnahme an, die nicht gefangen werden kann

Das ist also ein Problem, das ich nicht lösen konnte, und ich weiß auch keinen guten Weg, um einen MCVE zu machen. Im Wesentlichen wurde es hier kurz diskutiert, aber wie die Kommentare zeigen, gab es einige Unstimmigkeiten, und das endgültige Urteil ist noch aus. Daher schicke ich noch eine ähnliche Frage, in der Hoffnung, […]

Python 2.7: Child Thread nicht fangen KeyboardInterrupt

import sys import time import threading class exThread(threading.Thread): def __init__(self, threadId): threading.Thread.__init__(self) self.threadId = threadId def run(self): try: while 1: pass except KeyboardInterrupt: print "Ctrl-C caught by thread" finally: print "Thread's finally clause being executed" sys.exit() # Same as thread.exit() cond = True def func(): pass try: th = exThread(1) th.start() while True: if cond: […]

Python3 Webserver kommunizieren zwischen Threads für IRC bot

Ich habe eine Menge Dokumentation über Threading, Queuing, Pooling etc. gelesen, aber immer noch nicht herausfinden, wie man mein Problem lösen kann. Hier ist die Situation: Ich baute eine Python3 Django Anwendung, die von cherrypy serviert wird. Die Anwendung ist grundsätzlich ein weiterer IRC-Client. Wenn ich die GUI benutze, um meinen Code zum ersten Mal […]

Set wird modifiziert und scheint dann magisch zurückzukehren

Ich versuche, einen Kanal mit zuverlässiger Lieferung auf einem unzuverlässigen Kanal zu bauen (es ist eine Übung, der unzuverlässige Kanal löscht explizit einige seiner Pakete). Ich habe einen acks Satz, der (address, sequence_number) acks (address, sequence_number) Paare enthält. Wenn ein Ack über den Kanal empfangen wird, wird er dem acks Set hinzugefügt und eine Bedingungsvariable […]

Töten socket.accept () Aufruf auf geschlossene Unix-Buchse

Socket.close () stoppt keine Sperrung socket.accept () Anrufe, die bereits auf diesem Socket laufen. Ich habe mehrere Threads in meinem Python-Programm, die nur eine blockierende socket.accept () Aufruf auf eine Unix-Domain-Socket, die bereits geschlossen wurde. Ich möchte diese Threads zu töten, indem ich die socket.accept () Anrufe zu stoppen oder eine Ausnahme zu erhöhen. Ich […]

Python Queue.Queue funktioniert nicht in Threaded TCP Stream Handler

Ich versuche, einen Thread-TCP-Stream-Handler-Class-Thread und die Haupt-Thread-Talk zu machen, aber Queue.Queue tut nicht, was ich auch brauche, der Server empfängt Daten von einem anderen Programm, und ich möchte es einfach in die Hauptleitung übergeben Thread für die Verarbeitung hier ist der Code, den ich bisher habe: EDIT: Aktualisiert mit der vorgeschlagenen Antwort, Warteschlange immer noch […]

Python Multiprocessing mit unerwünschten identischen Prozessen

Diese Frage ist eine Gabel von: Multiprocessing / Threading: Daten anhängen & Ausgabe zurück Ich habe mehr oder weniger die gleiche "Run" -Funktion unten, außer dass anstatt ein Plotly Trace-Objekt anhängen, bin ich anhängen die x, y und z Vektoren, die ich danach verarbeiten werde. Der Inhalt von "run" wird zufällig (für argument sake) x, […]

Senden von beliebigen Daten mit Twisted

Ein Beispiel für meinen Code ist wie folgt. Ich möchte willkürlich Daten an verschiedenen Punkten im Programm senden. Twisted scheint toll für das Zuhören und dann reagieren, aber wie kann ich einfach senden Daten. from twisted.internet.protocol import DatagramProtocol from twisted.internet import reactor import os class listener(DatagramProtocol): def __init__(self): def datagramReceived(self, data, (host, port)): print "GOT […]

Python ist die beste Programmiersprache der Welt.