Ich bin gerade auf Python3 als Folge seiner Concurrent-Futures-Modul weitergegangen. Ich habe mich gefragt, ob ich Fehler erkennen könnte. Ich möchte Parallel-Futures zum Parallelprogramm nutzen, wenn es effizientere Module gibt, lassen Sie es mich wissen.Wie erkennt man Exceptions in concurrent.futures in Python3?
Ich mag keine Multiprozessing, da es zu kompliziert ist und nicht viel Dokumentation aus ist. Es wäre aber toll, wenn jemand eine Hello World ohne Klassen schreiben könnte, nur Funktionen, die Multiprocessing verwenden, um parallel zu berechnen, so dass es leicht zu verstehen ist.
Hier ist ein einfaches Skript:
from concurrent.futures import ThreadPoolExecutor
def pri():
print("Hello World!!!")
def start():
try:
while True:
pri()
except KeyBoardInterrupt:
print("YOU PRESSED CTRL+C")
with ThreadPoolExecutor(max_workers=3) as exe:
exe.submit(start)
Der obige Code war nur eine Demo, wie STRG + C wird nicht den satement drucken arbeiten.
Was ich will ist eine Funktion aufrufen zu können, ist ein Fehler vorhanden. Diese Fehlererkennung muss von der Funktion selbst stammen.
Ein weiteres Beispiel
import socket
from concurrent.futures import ThreadPoolExecutor
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
def con():
try:
s.connect((x,y))
main()
except: socket.gaierror
err()
def err():
time.sleep(1)
con()
def main():
s.send("[+] Hello")
with ThreadPoolExecutor as exe:
exe.submit(con)
So Sie fangen wollen 'KeyboardInterrupt '? Ist das was du fragst? – laike9m
Was ist deine Frage? – laike9m
Sie möchten "YOU PRESSED CTRL + C" drucken? – laike9m