Whole document tree
    

Whole document tree

Cancellation

Cancellation

Name

Cancellation -- 

Description

Details

gnome_vfs_cancellation_new ()

GnomeVFSCancellation* gnome_vfs_cancellation_new
                                            (void);

Create a new GnomeVFSCancellation object for reporting cancellation to a GNOME VFS module.


gnome_vfs_cancellation_destroy ()

void        gnome_vfs_cancellation_destroy  (GnomeVFSCancellation *cancellation);

Destroy cancellation.


gnome_vfs_cancellation_cancel ()

void        gnome_vfs_cancellation_cancel   (GnomeVFSCancellation *cancellation);

Send a cancellation request through cancellation.


gnome_vfs_cancellation_check ()

gboolean    gnome_vfs_cancellation_check    (GnomeVFSCancellation *cancellation);

Check for pending cancellation.


gnome_vfs_cancellation_ack ()

void        gnome_vfs_cancellation_ack      (GnomeVFSCancellation *cancellation);

Acknowledge a cancellation. This should be called if `gnome_vfs_cancellation_check()' returns TRUE or if `select()' reports that input is available on the file descriptor returned by `gnome_vfs_cancellation_get_fd()'.


gnome_vfs_cancellation_get_fd ()

gint        gnome_vfs_cancellation_get_fd   (GnomeVFSCancellation *cancellation);

Get a file descriptor -based notificator for cancellation. When cancellation receives a cancellation request, a character will be made available on the returned file descriptor for input.

This is very useful for detecting cancellation during I/O operations: you can use the `select()' call to check for available input/output on the file you are reading/writing, and on the notificator's file descriptor at the same time. If a data is available on the notificator's file descriptor, you know you have to cancel the read/write operation.