### Function

# Dex FiberFunc

#### Declaration

    DexFuture*
    (* DexFiberFunc) (
      gpointer user_data
    )

#### Description [src]

This function prototype is used for spawning fibers. A fiber is a lightweight, cooperative-multitasking feature where the fiber is given its own stack. The fiber runs until it reaches a point of suspension (using `dex_await()` or similar) or exits the fiber.

When suspended, the fiber is placed onto a queue until it is runnable again. Once runnable, the fiber is scheduled to run from within whatever scheduler it was created with.

See `dex_scheduler_spawn()`.

#### Parameters

`user_data`

  Type: `gpointer`

  No description available.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

#### Return value

Type: `DexFuture`

A `DexFuture` or `NULL`.

The caller of the function takes ownership of the data, and is responsible for freeing it.
The return value can be `NULL`.