ALL

  Why can System.out.println be used to exit while loop

Let's first take a look at one simple Java thread code snippet which is supposed to exit the while loop after the first loop run.public class StopThread { private static boolean stopRequested; public static void main(String[] args) throws InterruptedException { Thread backgroundThread = new Thread(new Runnable() { @Override public void run() { int i = 0; while (!stopRequested) { i++; } } }); backgroundThread.start(); TimeUnit.SECONDS.sleep(1); stopRequested = true; }}But the truth is that the loop may not exit and keep running. The reason is that the updated stopRequested value will be in the ...

  2,732      0       JAVA THREAD VOLATILE


  Concurrency vs Parallelism

Concurrency and parallelism are two related concepts which deal with executing tasks "simultaneously". From Sun's Multithreaded Programming Guide:Concurrency: A condition that exists when at least two threads are making progress. A more generalized form of parallelism that can include time-slicing as a form of virtual parallelism.Parallelism: A condition that arises when at least two threads are executing simultaneously.These two definitions are too formal to be understood easily. On the Internet, there is one image which demonstrates the difference between these two in an easy way:Much e...

  29,896      0       CONCURRENCY THREAD PARALLELISM


  Simple explanation about process and thread

Process and thread are two basic concepts of operating system, but they are a bit abstract which cannot be  mastered easily.There is an analogy which explains these concepts very well.1. The kernel of the computer is CPU, it handles all the computing tasks, it's like a factory and will run all the time.2. Assume there is power limitation for the factory, it can only supply to one unit once,i.e, when one unit is working, other units must stop and wait. The meaning behind this is that each CPU can handle only one task at once.3. Process likes the unit in the factory, it represents the singl...

  12,176      0       PROCESS THREAD CPU OPERATING SYSTEM