X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fgcancellable.c;h=258b88da56a8c9260a6ef422772c999da54d3ad3;hb=0f9acd9d9be0d6efe3110d20eeee9a8b57b558bd;hp=6c3254da311e7a26df2b752ee7dbd93bc8679568;hpb=adf892e96af403b8950dff1a370e4270ffaebc62;p=platform%2Fupstream%2Fglib.git diff --git a/gio/gcancellable.c b/gio/gcancellable.c index 6c3254d..258b88d 100644 --- a/gio/gcancellable.c +++ b/gio/gcancellable.c @@ -106,13 +106,12 @@ g_cancellable_class_init (GCancellableClass *klass) * * An example of how to us this: * |[ - * /* Make sure we don't do unnecessary work if already cancelled */ + * // Make sure we don't do unnecessary work if already cancelled * if (g_cancellable_set_error_if_cancelled (cancellable, error)) * return; * - * /* Set up all the data needed to be able to - * * handle cancellation of the operation - * */ + * // Set up all the data needed to be able to handle cancellation + * // of the operation * my_data = my_data_new (...); * * id = 0; @@ -121,13 +120,12 @@ g_cancellable_class_init (GCancellableClass *klass) * G_CALLBACK (cancelled_handler) * data, NULL); * - * /* cancellable operation here... */ + * // cancellable operation here... * * g_cancellable_disconnect (cancellable, id); * - * /* cancelled_handler is never called after this, - * * it is now safe to free the data - * */ + * // cancelled_handler is never called after this, it is now safe + * // to free the data * my_data_free (my_data); * ]| * @@ -223,8 +221,8 @@ g_cancellable_pop_current (GCancellable *cancellable) * * Gets the top cancellable from the stack. * - * Returns: (transfer none): a #GCancellable from the top of the stack, or %NULL - * if the stack is empty. + * Returns: (nullable) (transfer none): a #GCancellable from the top + * of the stack, or %NULL if the stack is empty. **/ GCancellable * g_cancellable_get_current (void) @@ -246,6 +244,13 @@ g_cancellable_get_current (void) * * If cancellable is currently in use by any cancellable operation * then the behavior of this function is undefined. + * + * Note that it is generally not a good idea to reuse an existing + * cancellable for more operations after it has been cancelled once, + * as this function might tempt you to do. The recommended practice + * is to drop the reference to a cancellable after cancelling it, + * and let it die with the outstanding async operations. You should + * create a fresh cancellable for further async operations. **/ void g_cancellable_reset (GCancellable *cancellable) @@ -717,7 +722,9 @@ static GSourceFuncs cancellable_source_funcs = * For convenience, you can call this with a %NULL #GCancellable, * in which case the source will never trigger. * - * Return value: (transfer full): the new #GSource. + * The new #GSource will hold a reference to the #GCancellable. + * + * Returns: (transfer full): the new #GSource. * * Since: 2.28 */