41 lines
1.1 KiB
Plaintext
41 lines
1.1 KiB
Plaintext
total(values: List<Int>) (answer: Int) pure { answer = sum(values) }
|
|
|
|
asyncTotal(values: List<Int>, delayed: false) (answer: Int) { answer = total(values) }
|
|
asyncTotal(values: List<Int>, delayed: true) (answer: Int) {
|
|
dever.task.sleep(0)
|
|
answer = total(values)
|
|
}
|
|
|
|
syncPair(values: List<Int>) (answer: Int) {
|
|
first_task = run(total(values))
|
|
second_task = run(total(values))
|
|
first_value = wait(first_task)
|
|
second_value = wait(second_task)
|
|
answer = first_value + second_value
|
|
}
|
|
|
|
asyncPair(values: List<Int>) (answer: Int) {
|
|
first_task = run(asyncTotal(values, false))
|
|
second_task = run(asyncTotal(values, false))
|
|
first_value = wait(first_task)
|
|
second_value = wait(second_task)
|
|
answer = first_value + second_value
|
|
}
|
|
|
|
parallelSum(values: List<Int>) (answer: Int) { answer = parallel(total(values)) }
|
|
|
|
blockedTotal(values: List<Int>) (answer: Int) {
|
|
dever.time.sleep(0)
|
|
answer = total(values)
|
|
}
|
|
|
|
blockingSum(values: List<Int>) (answer: Int) { answer = blocking(blockedTotal(values)) }
|
|
|
|
cancel() (answer: Int) {
|
|
stop(run(dever.task.sleep(60000)))
|
|
answer = 1
|
|
}
|
|
|
|
timer() (answer: Int) { dever.task.sleep(0)
|
|
answer = 1 }
|