У меня есть функция, которая возвращает некоторый результат, и я также измеряю время работы этой функции:
private suspend fun <T> runParallelTasksWithStatistics(
chunksOfParallelTasks: List<List<T>>,
task: suspend (SessionId?, ClientApiRpcProxy, T) -> Unit
): StressTestStatistics {
val testStartTimeMs = System.currentTimeMillis()
val taskResults = runParallelTasks(chunksOfParallelTasks, task)
val totalMillisPassed = System.currentTimeMillis() - testStartTimeMs
return calculateStressTestStatistics(
AggregateTaskResults(taskResults, totalMillisPassed)
)
}
Как видите, после запуска функции runParallelTasks(chunksOfParallelTasks, task)
мне нужно два значения:
totalMillisPassed
taskResults
Как я могу использовать measureTimeMillis
, не прибегая к изменению var
переменной?
val totalMillisPassed = measureTimeMillis {
val taskResults = runParallelTasks(chunksOfParallelTasks, task)
}
AggregateTaskResults(taskResults, totalMillisPassed)
В области AggregateTaskResults()
я вижу только totalMillisPassed
, но я также хочу получить доступ к результату taskResults
.