Start two threads incrementing a shared counter (demo with lock).
Toolliyo Coach
Progressive help: Nudge → Guide → Approach. Full solution stays behind the Solution tab.
Editor is open — no login wall to practice.
| Test | Status | Details |
|---|
Ready — edit the code above and click Run or Submit.
using System;
using System.Threading;
class Program {
static int counter = 0;
static object gate = new();
static void Main() {
var t1 = new Thread(() => { lock (gate) { counter++; } });
var t2 = new Thread(() => { lock (gate) { counter++; } });
t1.Start(); t2.Start();
t1.Join(); t2.Join();
Console.WriteLine(counter);
}
}
Prefer Coach (Nudge → Guide → Approach) before revealing. No forced signup.
Race conditions without sync—use lock or Interlocked. Modern code prefers Task/async.
Sign in to save and review your submission history. You can still Run code on the Editor tab as a guest.
Sign in