Python сохраняет возвращаемое значение в параллельном программированииPython

Программы на Python
Ответить
Anonymous
 Python сохраняет возвращаемое значение в параллельном программировании

Сообщение Anonymous »

У меня есть два разных метода. Каждый из двух методов возвращает список. Один из методов также принимает параметр.

Я выполняю два метода параллельно.
  • Однако я не понимаю, как получить возвращаемые значения двух функций из моего вызова функции?
  • Кроме того, я получил этот код откуда-то еще и не понимаю, в чем именно заключается значение «is_something1» и «is_something2» и какова его роль здесь?
from concurrent.futures import ThreadPoolExecutor
import datetime
import time

def func1():
print("function1 called "+ str(datetime.datetime.now())+"\n")
time.sleep(5)
print("function1 ended "+ str(datetime.datetime.now())+"\n")
list1 = [4,5,6]
return list1

def func2(str_sample):
print("function2 called "+ str(datetime.datetime.now())+"\n")
time.sleep(5)
print("function2 ended "+ str(datetime.datetime.now())+"\n")
list2 = [1,2,3]
return list2

def run_io_tasks_in_parallel(tasks):
with ThreadPoolExecutor() as executor:
running_tasks = [executor.submit(task) for task in tasks]
for running_task in running_tasks:
running_task.result()

results = run_io_tasks_in_parallel([
lambda: {'is_something1': func1()},
lambda: {'is_something2': func2()},
])



Подробнее здесь: https://stackoverflow.com/questions/572 ... rogramming
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»