diff options
| author | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2022-02-18 14:45:05 +0100 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2022-02-18 14:46:30 +0100 |
| commit | 0711d4c1d6afb41ca31afbf8bd6253921d57eeb4 (patch) | |
| tree | 17fc40c7e8b13bc42e4f9b49a935a67db408c1bd /opendc-experiments/opendc-experiments-tf20 | |
| parent | 52d35cd82905612f0ef9f7b7d88611300fb48ebe (diff) | |
perf(common): Optimize TimerScheduler
This change updates the TimerScheduler implementation to directly use
the Delay object instead of running the timers inside a coroutine.
Constructing the coroutine is more expensive, so we prefer running in a
Runnable.
Diffstat (limited to 'opendc-experiments/opendc-experiments-tf20')
| -rw-r--r-- | opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/network/NetworkController.kt | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/network/NetworkController.kt b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/network/NetworkController.kt index 9771cc20..7d65a674 100644 --- a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/network/NetworkController.kt +++ b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/network/NetworkController.kt @@ -23,7 +23,7 @@ package org.opendc.experiments.tf20.network import kotlinx.coroutines.channels.Channel -import org.opendc.utils.TimerScheduler +import org.opendc.common.util.TimerScheduler import java.time.Clock import kotlin.coroutines.CoroutineContext @@ -89,6 +89,6 @@ public class NetworkController(context: CoroutineContext, clock: Clock) : AutoCl * Stop the network controller. */ override fun close() { - scheduler.close() + scheduler.cancelAll() } } |
