CWE-572

Call to Thread run() instead of start()
AI Translation Available

The product calls a thread's run() method instead of calling start(), which causes the code to run in the thread of the caller instead of the callee.

Status
draft
Abstraction
variant
Java

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.

Common Consequences

other
Impacts
quality degradation varies by context

Detection Methods

automated static analysis

Potential Mitigations

Phases:
implementation
Descriptions:
• Use the start() method instead of the run() method.