The computation proceeds in the background, in a thread. The status of the task can be observed by printing t. When the computation is finished, as can be detected with isReady(Task), the final value can be retrieved with taskResult(Task).
i1 : f = x -> 2^x o1 = f o1 : FunctionClosure |
i2 : t = createTask(f,3) o2 = <<task, created>> o2 : Task |
i3 : schedule t o3 = <<task, created>> o3 : Task |
i4 : while not isReady t do sleep 1 |
i5 : taskResult t o5 = 8 |
i6 : u = schedule(f,4) o6 = <<task, result available, task done>> o6 : Task |
i7 : while not isReady u do sleep 1 |
i8 : taskResult u o8 = 16 |