JD.THREAD.RUN

JD.THREAD.RUN occurs when a Thread.run() method is called explicitly.

Vulnerability and risk

In most cases, this is a mistake. The method is called implicitly by the thread itself. After a Thread.start() method has been invoked, calling Thread.run() will not start a thread.

Mitigation and prevention

Should you change it to Thread.start()?

Example 1

Copy
      static void start() {
         new Thread(){
             public void run(){
                 // do something
             }
         }.run();
     }

JD.THREAD.RUN is reported for line 14: There is a call to the 'Thread.run()' method. This method is not meant to be called explicitly. Should probably be replaced with 'Thread.start()'?