A thread is basically a part of a process which is set up to achieve a particular task. All threads in a process have independent tasks and work simultaneously to achieve them. Many a times, the output is distorted when working with threads and this is because both threads work simultaneously and throw the output. However, this does not effect the functionality of the software because both the results are independent to each other.