Skip to content

Commit 218f953

Browse files
committed
Use LongAdder in TaskControl
1 parent faaa54f commit 218f953

File tree

1 file changed

+13
-13
lines changed
  • core/trino-main/src/main/java/io/trino/execution/executor/scheduler

1 file changed

+13
-13
lines changed

core/trino-main/src/main/java/io/trino/execution/executor/scheduler/TaskControl.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import com.google.errorprone.annotations.concurrent.GuardedBy;
1919

2020
import java.util.Objects;
21-
import java.util.concurrent.atomic.AtomicLong;
21+
import java.util.concurrent.atomic.LongAdder;
2222
import java.util.concurrent.locks.Condition;
2323
import java.util.concurrent.locks.Lock;
2424
import java.util.concurrent.locks.ReentrantLock;
@@ -53,10 +53,10 @@ final class TaskControl
5353
private State state;
5454

5555
private volatile long periodStart;
56-
private final AtomicLong startNanos = new AtomicLong();
57-
private final AtomicLong scheduledNanos = new AtomicLong();
58-
private final AtomicLong blockedNanos = new AtomicLong();
59-
private final AtomicLong waitNanos = new AtomicLong();
56+
private final LongAdder startNanos = new LongAdder();
57+
private final LongAdder scheduledNanos = new LongAdder();
58+
private final LongAdder blockedNanos = new LongAdder();
59+
private final LongAdder waitNanos = new LongAdder();
6060
private final int hashCode;
6161
private volatile Thread thread;
6262

@@ -275,10 +275,10 @@ private void recordPeriodEnd(State state)
275275
long now = ticker.read();
276276
long elapsed = now - periodStart;
277277
switch (state) {
278-
case RUNNING -> scheduledNanos.addAndGet(elapsed);
279-
case BLOCKED -> blockedNanos.addAndGet(elapsed);
280-
case NEW -> startNanos.addAndGet(elapsed);
281-
case WAITING -> waitNanos.addAndGet(elapsed);
278+
case RUNNING -> scheduledNanos.add(elapsed);
279+
case BLOCKED -> blockedNanos.add(elapsed);
280+
case NEW -> startNanos.add(elapsed);
281+
case WAITING -> waitNanos.add(elapsed);
282282
case INTERRUPTED, FINISHED -> {}
283283
}
284284
periodStart = now;
@@ -307,22 +307,22 @@ public long elapsed()
307307

308308
public long getStartNanos()
309309
{
310-
return startNanos.get();
310+
return startNanos.longValue();
311311
}
312312

313313
public long getWaitNanos()
314314
{
315-
return waitNanos.get();
315+
return waitNanos.longValue();
316316
}
317317

318318
public long getScheduledNanos()
319319
{
320-
return scheduledNanos.get();
320+
return scheduledNanos.longValue();
321321
}
322322

323323
public long getBlockedNanos()
324324
{
325-
return blockedNanos.get();
325+
return blockedNanos.longValue();
326326
}
327327

328328
@Override

0 commit comments

Comments
 (0)