Thread: A thread is defined at the operating system level. It is a single execution of a program. A thread is a set of instruction. An application can be composed of several threads. Different threads can be executed at the same time. The JVM works with several threads like Garbage collector, JIT etc. What does mean by "At the same time"? In a single core of CPU, the threads cannot works at the same time, it give us a feel that it is running at same but in reality it work one by one and the context switch happen very fast in milliseconds which we can't observe. On a multi-core CPU, things happens at the same time. A challenge while this is the read and write operation involve while running different thread at same time. Who is responsible for the CPU sharing? There is a special element who does this, is called scheduler.there are three reasons for a scheduled to pause a thread - The CPU should be shared equally among threads. The thread might be waiting ...
Computer science engineering's subject topics notes, Programming Notes and personal finance stuff