### Virtual Method

# Gio File dup

#### Declaration

    GFile*
    dup (
      GFile* file
    )

#### Description

Duplicates a `GFile` handle. This operation does not duplicate the actual file or directory represented by the `GFile`; see `g_file_copy()` if attempting to copy a file.

`g_file_dup()` is useful when a second handle is needed to the same underlying file, for use in a separate thread (`GFile` is not thread-safe). For use within the same thread, use `g_object_ref()` to increment the existing object’s reference count.

This call does no blocking I/O.

#### Return value

Type: `GFile`

A new `GFile` that is a duplicate of the given `GFile`.

The caller of the function takes ownership of the data, and is responsible for freeing it.