summaryrefslogtreecommitdiffstats
path: root/async/src/async.cpp
Commit message (Collapse)AuthorAge
* Async: allow appending Jobs to already running or finished JobsDan Vrátil2015-02-21
| | | | | | | | | When user gets a Job (from a method call for instance), which is already running or might have even finished already, they can still append a new Job to the chain and re-execute it. The Job will internally chain up to the last finished Job, use it's result and continue from the next Job in the chain. If a Job in the chain is still running, it will wait for it to finish and pass the result to the next Job in the chain.
* Async: don't leak ExecutorsDan Vrátil2015-02-07
| | | | | | We now hold executors in shared pointers. We cannot easilly delete them, as they are referenced from two objects (the Job they belong to, and the next job), and the lifetime of the jobs is unclear.
* Async: relicense from GPLv2 to LGPLv2+Dan Vrátil2014-12-18
|
* Async: bring back synchronous Future::waitForFinished()Dan Vrátil2014-12-14
|
* Async: make the processing truly asynchronousDan Vrátil2014-12-14
| | | | | | Now calling exec() starts the first job and returns a pending Future immediately. Caller can then use Async::FutureWatcher to wait for the future to become finished, i.e. for all jobs to finish execution.
* Async: move some more code out-of-lineDan Vrátil2014-12-12
|
* Async: move some common code from executors to shared base classDan Vrátil2014-12-12
|
* Async: move the actual task exection into Executor implementationDan Vrátil2014-12-11
| | | | | | | As of now, Job is only front interface to a chain of Executor subclasses. Each Executor subclass specializes for given type of execution (then, each, reduce, ...), and the chain is then executed recursively, as we did with the original Job implementation.
* Async: move some definitions out-of-lineDan Vrátil2014-12-11
|
* Prototype of Async libraryDan Vrátil2014-12-11