VariantDraft

CWE-572Call to Thread run() instead of start()

Category: other

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· 1

  • Other — Quality Degradation, Varies by Context

Potential mitigations· 1

  • [Implementation]Use the start() method instead of the run() method.

References

  1. https://cwe.mitre.org/data/definitions/572.html

Related by meaning· 6

Nearest entities by semantic similarity across the cs-graph corpus.

CWE
Invokable Control Element in Multi-Thread Context with non-Final Static Storable or Member Element
CWE
Use of a Non-reentrant Function in a Concurrent Context
CWE
Unintended Reentrant Invocation of Non-reentrant Code Via Nested Calls
CWE
Insufficient Control Flow Management
CWE
Excessively Deep Nesting
CWE
Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Sourced from MITRE CWE 4.20. Curated for EU compliance use cases by Adam Lundqvist, Founder at SQUR.