Спасибо за ответ.Да, я читал о GIL, но это не создает мне никаких проблем.Как правило, я решаю свою проблему, потому что я нахожу решение на другом сайте.Код, как сейчас:
Main_script:
import queue
import script1
import script2
queue_callbacks = queue.Queue()
threads_list = list()
temp_path1 = ''
thread1 = threading.Thread(target= lambda q, arg1: q.put(Script1.Main(arg1)),
name='Script1',
args=(queue_callbacks, temp_path1, ))
thread1.start()
temp_path2 = ''
thread2 = threading.Thread(target= lambda q, arg1: q.put(Script2.Main(arg1)),
name='Script2',
args=(queue_callbacks, temp_path2, ))
thread2.start()
for t in threads_list:
t.join()
while not kolejka_callbacks.empty():
result = queue_callbacks.get()
callbacks.append({"service": result.service, "callback": result.callback, "error": result.error})
И это прекрасно работает.Теперь у меня есть другая проблема, потому что я хочу, чтобы это работало в больших масштабах, где у меня есть сотни сценариев и которые обрабатываются с помощью eq 5 потоков.В общем, есть ли ограничение на количество потоков, работающих одновременно?