Warum ist Print (Zeile) in read_stdout jedes Zeichen anstelle der gesamten Zeile druckt? Ich gehe davon aus[code]plugin_test.py[/code]: [code]from subprocess import PIPE, Popen from threading import Thread from queue import Queue, Empty import re import os import sys
def read_stdout(stdout, data_q): for line in stdout.readline(): print(line) data_q.put(line) stdout.close()
try: startup = self.data_q.get(timeout=10) except Empty: print("Plugin took to long to load {}.".format(self.name)) self.stop() return False else: if 'Error' in startup: print("Could not load plugin {}. {}".format(self.name, startup)) self.stop() return False elif '100%' in startup: print("Plugin \"{}\" started.".format(self.name))
return True
def write(self, data : str) -> None: self.process.stdin.write(data) self.process.stdin.flush()
def read(self) -> str: try: data = self.data_q.get() print("Got data ::{}::".format(data)) except Exception as exc: print("Error reading data from plugin '{}'".format(exc))
if __name__ == '__main__': plugin = Plugin() plugin.run() < /code> test.py[/code]: [code]print("this is a test") print("this is a test2") print("100%") < /code> root@osboxes# python plugin_test.py
Ich bin neu in TPL und ich frage mich: Wie ist die asynchrone Programmierunterstützung, die neu zu C# 5.0 ist (über das neue Async und erwartet Keywords), die sich auf die Erstellung von Threads...
Wenn ich mein Programm ausführe, geben Sie ein Wort ein: und cin Anweisungen werden erst ausgeführt, bis ich ein neues Zeilenzeichen in der Konsole eingehe. #include
#include
using std::cout,...
Ich schreibe Python -Skript in Photogrammetry Application Metashape . Die App ist in C/C ++ geschrieben und ich möchte alle Konsolenausgaben unterdrücken und meine eigene Fortschrittsleiste...
Ich war immer erstaunt/frustriert darüber, wie lange es dauert, einfach mit einer Druckanweisung an das Terminal auszugeben. Nach einigen kürzlich schmerzhaft langsamen Protokollierung entschied ich...
Ich habe mein Gehirn schon seit ein paar Stunden herausgezogen, ich kann das nicht zum Laufen bringen, ich war auf der 3. Seite der Google -Ergebnisse, aber ich kann das nicht richtig machen.
Code:...