35 lines
912 B
Python
35 lines
912 B
Python
import threading
|
|
|
|
helloworld = "start"
|
|
|
|
def task1(name):
|
|
print(f"Task 1 executing with name: {name}")
|
|
return f"Hello, {name}!"
|
|
|
|
def task2(age):
|
|
global helloworld
|
|
helloworld = 'done'
|
|
print(f"Task 2 executing with age: {age}")
|
|
return f"You are {age} years old."
|
|
|
|
# Create thread objects for each task, passing arguments as a tuple
|
|
thread1 = threading.Thread(target=task1, args=("John",))
|
|
thread2 = threading.Thread(target=task2, args=(25,))
|
|
|
|
# Start the threads
|
|
thread1.start()
|
|
thread2.start()
|
|
|
|
# Wait for both threads to finish execution
|
|
thread1.join()
|
|
thread2.join()
|
|
|
|
# Retrieve the return values from each thread
|
|
result_task1 = thread1.result if hasattr(thread1, 'result') else None
|
|
result_task2 = thread2.result if hasattr(thread2, 'result') else None
|
|
|
|
print("All tasks completed")
|
|
print("Result from Task 1:", result_task1)
|
|
print("Result from Task 2:", result_task2)
|
|
print(helloworld)
|