Tag: multithreading

Spielen Sie einen Ton mit Python-Unterprozess und Threading

Ich versuche, eine Warnung zu öffnen, dann schleife einen Ton, bis die Warnung geschlossen ist. Dann sollte der Ton aufhören. Ich habe das versucht: import threading import time import subprocess stop_sound = False def play_alarm(file_name = "beep.wav"): """Repeat the sound specified to mimic an alarm.""" while not stop_sound: process = subprocess.Popen(["afplay", file_name], shell=False) while not […]

Tkinter und Fäden

Also, was ich versuche zu tun ist, um ein tkinter-Fenster zu erstellen und dann tauschen sie über den Bildschirm, ohne die GUI neu zu öffnen. Das erste Problem, dem ich gegenüberstehe, ist, dass das Threading nicht zu funktionieren scheint. Das Programm wählt nur die Deadfenster-Funktion aus und ignoriert den Code unterhalb der thread.start-Zeile. Ist es […]

Python Zugriff auf mehrere Webseiten auf einmal

Ich habe eine tkinter GUI, die Daten von mehreren Webseiten gleichzeitig herunterlädt. Ich laufe einen separaten Thread für jeden Download (ca. 28). Ist das zu viel für einen GUI-Prozess? Denn es ist wirklich langsam, jede einzelne Seite sollte etwa 1 bis 2 Sekunden dauern, aber wenn alle auf einmal laufen, dauert es über 40 Sekunden. […]

Neu bei Python Threading – Es scheint nicht, einen Unterschied zu machen

Ich habe zusammen einen automatischen vnc Scanner gepflastert. Es läuft durch IP-Adressen und wenn es einen offenen Port 5900 erkennt, versucht er einen Screenshot. Es ist nicht schön und schlecht gebaut, aber es funktioniert. Es ist aber langsam Ich habe versucht, die Prozesse zu werfen, aber ich habe gekämpft. Sie können sehen, ich habe in […]

Dieses Non-Threaded-Skript läuft unerwartet schneller als die Threaded-Version

Ich habe ein Python-Skript, das Daten aus einigen Zeilen in einer Datenbank abruft und dann die Fehler in einer anderen Tabelle in derselben Datenbank protokolliert. Das Skript validiert jede Zeile und markiert es als validiert & hat Fehler = True / False abhängig vom Validierungsergebnis. Dieser Vorgang wird für jede Zeile wiederholt. Mit diesem, dachte […]

Wie kann ich Spinlock-Probleme mit Multithread-Python lösen?

Ich schreibe eine Multithread-Anwendung in Python und habe auf ein Problem gestoßen, wo Kernel Zeit rauscht. Mit perf Ich sehe, dass es in der Tat ein Spinlock ist: 54.89% python [kernel.kallsyms] [k] __ticket_spin_lock Der Code, der den Spinlock verursacht, ist unten: for i in range(0, my_uuids_len): while threading.active_count() >= concurrency: time.sleep(0.1) threading.Thread(target=read_benchmark,args=(read_times,my_uuids.pop(),)).start() counter += 1

Python Tkinter: Progress Bar wird nicht minimiert, wenn die Hauptanwendung minimiert wird

Führen Sie bitte das folgende Beispiel aus. Ich habe einen Fortschrittsbalken für meine Anwendung erstellt und durch Drücken der "Open" -Taste erscheint ein Fortschrittsbalken. Der Fortschrittsbalken wird jedoch nicht minimiert, wenn die Hauptanwendung minimiert wird. Ich habe die folgende Codezeile ausprobiert, aber es funktioniert nur, wenn ich mich selbst aussiehe.master.overrideredirect (True): self.master.transient(parent) Beispiel (Python 2.7.3, […]

Python-Threading mit Warteschlange: wie zu vermeiden, um beitreten zu verwenden?

Ich habe ein Szenario mit 2 Fäden: Ein Thread wartet auf Nachrichten aus einem Sockel (eingebettet in eine C-Bibliothek – Blocking Call ist "Barra.ricevi") dann setzen ein Element auf eine Warteschlange Ein Thread wartet darauf, Element aus der Warteschlange zu bekommen und etwas zu tun Beispielcode import Barra import Queue import threading posQu = Queue.Queue(maxsize=0) […]

Wie komme ich mehr Fäden als Prozesse, die ich nach meinem Pool in py3k Multiprocessing unter Linux gefragt habe?

Ich versuche, eine Arbeit zu verarbeiten, die auf meinem Mac läuft (Pyton 3.2.2 unter Mac OS 10.7), aber gibt den folgenden Fehler auf einem Linux-Cluster Ich laufe es, wo ich 4 Kerne bekam und auf Python 3.2 zugreifen. Die Fehlermeldungen werden fortgesetzt, bis ich die Ausführung manuell überbringe. Exception in thread Thread-2: Traceback (most recent […]

SQLAlchemie – Einheit nicht als abgelaufen markiert

Ich habe Multi-Thread python3 Werkzeug, um andere Prozesse zu verwalten. Ich verwende Datensätze in der Datenbank zu markieren, dass bestimmte Prozess ist jetzt beschäftigt. class Process(base): id = Column('ID', Integer, primary_key=True) name = Column('NAME', String(128)) tasks = relationship('ProcessTask', back_populates="process", cascade="all, delete-orphan", passive_deletes=True) """ :type: list[ProcessTask] """ class ProcessTask(base): id = Column('ID', Integer, primary_key=True) process_id = […]

Python ist die beste Programmiersprache der Welt.