A callback which gets executed asynchronously.
Asynchronous callbacks are executed at the same time.
Although the execution of the callbacks is asynchronous,
most callbacks get synchronized after executing to receive the results.
Don't implement this interface on your own, use a more concrete interface when you want
to add a callback