Starts asynchronous initialization of the object implementing the interface. This must be done before any real use of the object after initial construction. If the object also implements #GInitable you can optionally call gio.initable.Initable.init_ instead.
Finishes asynchronous initialization and returns the result. See gio.async_initable.AsyncInitable.initAsync.
Finishes the async construction for the various g_async_initable_new calls, returning the created object or null on error.
gio.async_initable.AsyncInitable is an interface for asynchronously initializable objects.
This is the asynchronous version of gio.initable.Initable; it behaves the same in all ways except that initialization is asynchronous. For more details see the descriptions on gio.initable.Initable.
A class may implement both the gio.initable.Initable and gio.async_initable.AsyncInitable interfaces.
Users of objects implementing this are not intended to use the interface method directly; instead it will be used automatically in various ways. For C applications you generally just call gio.async_initable.AsyncInitable.newAsync directly, or indirectly via a foo_thing_new_async() wrapper. This will call gio.async_initable.AsyncInitable.initAsync under the covers, calling back with NULL and a set glib.error.ErrorG on failure.
A typical implementation might look something like this: