Hello, look at this code: class A{ public static void main(String s[]){ System.out.println("Hello"); } } My question is how many threads run concurrently(including JVM and gc)while executing the above code? Plz give an elaborate reply.. Thanking in advance.., Manoj
in this program the only non-daemon thread is the main thread. there may be n numbers of daemon threads, of which gc is one example. the jvm exists only when all the non-daemon threads are dead. as for daemon threads, they are system threads and don't belong to a process as such.
Manoj Chandran
Greenhorn
Joined: Jan 26, 2001
Posts: 25
posted
0
Hi Anshuman, Can u plz differentiate between daemon n non daemon threads? Manoj
Anshuman Acharya
Ranch Hand
Joined: Jan 19, 2001
Posts: 144
posted
0
I am giving a reference Baldwin's Java Tutorial Daemon Threads According to Java Primer Plus, if you set a thread as a daemon thread using setDaemon() method, you are specifying that the thread belongs to the system and not to the process that spawned it.Daemon threads are useful if you want a thread to run in the background for extended periods of time. According to Deitel and Deitel, Java, How to Program, "A daemon thread is a thread that runs for the benefit of other threads." Daemon threads run in the background and do not prevent a program from terminating. For example, the garbage collector is a daemon thread. A program can include a mixture of daemon and non-daemon threads. The Java virtual machine will exit when only daemon threads remain in a program.