def multiply(a, b, que):
    que.put(a * b)
if __name__ == '__main__':
    queue1 = Queue()
p = Process(target=multiply, args=(5, 4, queue1))
p.start()
print(queue1.get())
p.join()
print('ok.')
Assigning return value of function to a variable, with multiprocessing? And a problem about IDLE?