On Thu, Jan 05, 2017 at 02:32:46PM -0600, Eric Blake wrote:
> On 01/05/2017 10:03 AM, Daniel P. Berrange wrote:
> > Currently there is no data associated with a successful
> > task completion. This adds an opaque pointer to the task
> > to store an arbitrary result.
> > 
> > Signed-off-by: Daniel P. Berrange <berra...@redhat.com>
> > ---
> >  include/io/task.h | 27 +++++++++++++++++++++++++++
> >  io/task.c         | 20 ++++++++++++++++++++
> >  2 files changed, 47 insertions(+)
> > 
> 
> I suppose a different approach would have been changing QIOTaskFunc() to
> have a void* return, but that would be more invasive.  Grabbing the
> result separately from the task completing is a bit weird, but looks
> like it will work.

FYI, the design I've chosen here closely matches that used by GLib in its
own GTask / GAsyncResult, on which the QIOTask was modelled. The idea is
that in future when we eventually bump to a newer glib, we can switch
over to GTask easily.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|

Reply via email to