Other FAQ pages
What is multithreading?
- A thread is a lightweight process which when spawned creates parallel paths of execution.
- Analogous to multitasking. Tasks are heavyweight processes, whereas threads are lightweight processes which are often part of a task.
- Java has support for thread based multitasking. Threads in Java can be broadly classified in two types :- (1) User Thread (2) Daemon Thread. A user thread is what you get by default -- the thread that calls the main() method is a user thread. The distinction between user and daemon thread is only to determine whether a program has completed -- the JVM will exit when there are only daemon threads running. A thread can be made Daemon by calling the setDaemon(<boolean>) method. But this call should be made before calling the start() method otherwise a IllegalThreadStateException will be thrown.