CWE-572 — Call to Thread run() instead of start()
CWE-572: Call to Thread run() instead of start()
MITRE CWE weakness
| Kind | Weakness |
| Abstraction | Variant |
| Status | Draft |
| Likelihood of exploit | — |
Description
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.
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: Quality Degradation, Varies by Context
Mitigations
Implementation — Use the start() method instead of the run() method.
References
- CWE page: https://cwe.mitre.org/data/definitions/572.html
- CWE list: https://cwe.mitre.org/data/index.html