Java is one of the mutli-threaded programming languages. This means that one can develop multi-threaded programs with the use of Java. A multi threaded program has two or more portions that can function simultaneously with each portion handling an entirely different task while making optimal use of all available resources when a system has multiple CPUs.
Multi-tasking is when multiple processes share the same processing resources like a CPU. Multi-threading is basically an extension of multitasking into applications where one can subdivide specific operations in one application into separate threads. Each of these threads can run parallel. The operating System divides the processing time among different application and also divides it among different threads within an application. Multi-threading allows the programmer to write in a way where these multiple activities can process concurrently within the same program.
Life Cycle of a Thread: Threads go through various stages in their life cycle. A thread is first born, then runs and finally dies. Students of IIHT’s Java 8 course are taught in detail about all the various stages.