Ich habe zwei Funktionen, die ich zum Abfragen der Datenbank verwenden. Angenommen, zwei separate Abfragen, wie diese parallel ausgeführt werden, um die gleiche Datenbank abzufragen, und warten Sie auf beide Ergebnisse zurück, bevor Sie die Ausführung des restlichen Codes fortsetzen?So verwenden Sie Python, Datenbank parallel abzufragen
def query1(param1, param2):
result = None
logging.info("Connecting to database...")
try:
conn = connect(host=host, port=port, database=db)
curs = conn.cursor()
curs.execute(query)
result = curs
curs.close()
conn.close()
except Exception as e:
logging.error("Unable to access database %s" % str(e))
return result
def query2(param1, param2):
result = None
logging.info("Connecting to database...")
try:
conn = connect(host=host, port=port, database=db)
curs = conn.cursor()
curs.execute(query)
result = curs
curs.close()
conn.close()
except Exception as e:
logging.error("Unable to access database %s" % str(e))
return result
ich denke, man einen Blick auf die nehmen kann [ 'threading'] (https: // docs .python.org/3/library/threading.html) Bibliothek aus der Standardsammlung. Es gibt einige gute Beiträge hier, die erklären, wie man Python-Threads benutzt (und ihre Rückgabewerte sammelt), wie http://stackoverflow.com/questions/6893968/how-to-get-the-return-value-from-a-thread- In-Python (es ist nicht wirklich * Parallelität * auf Python-Seite, aber beide Anfragen werden fast gleichzeitig gemacht). – mgc