Code Correctness: Call to Thread.run()

Abstract
The program calls a thread's run method instead of calling start.

Description
In most cases a direct call to a Thread object's run method is a bug. The programmer intended to begin a new thread of control, but accidentally called run instead of start, so the run method will execute in the caller's thread of control.

Examples
The following excerpt from a Java program mistakenly calls run instead of start.

Thread thr = new Thread { public void run { ...     }     };    thr.run;