What are concurrent features in React 18 (useTransition, useDeferredValue)?
Quick answer
They let React interrupt rendering to stay responsive. useTransition marks updates as non-urgent; useDeferredValue gives a lagging copy of a fast-changing value.
In detail
Concurrent rendering can pause and prioritise work. useTransition wraps a non-urgent update (filtering a big list) so urgent updates (typing) stay snappy, exposing isPending for feedback. useDeferredValue defers an expensive render driven by a value without restructuring your setState calls. Both prevent the UI from freezing during heavy updates.
const [isPending, startTransition] = useTransition();
setQuery(text); // urgent
startTransition(() => setResults(filter(text))); // non-urgentWhy interviewers ask this: Tests current React 18 knowledge at senior level.
This is 1 of 118+ questions in the React Interview Kit
Get every question with detailed answers, follow-ups and real code — plus coding challenges and a last-minute revision sheet. One-time payment, instant access.
⚡ Get the React Interview Kit → ₹399