Class

DexFiber

Description [src]

final class Dex.Fiber : GObject.TypeInstance {
  /* No available fields */
}

DexFiber is a fiber (or coroutine) which itself is a DexFuture.

When the fiber completes execution it will either resolve or reject the with the result or error.

You may treat a DexFiber like any other DexFuture which makes it simple to integrate fibers into other processing chains.

DexFiber are provided their own stack seperate from a threads main stack, They are automatically scheduled as necessary.

Use dex_await() and similar functions to await the result of another future within the fiber and the fiber will be suspended allowing another fiber to run and/or the rest of the applications main loop.

Once a fiber is created, it is pinned to that scheduler. Use dex_scheduler_spawn() to create a fiber on a specific scheduler.

Ancestors

Instance methods

Methods inherited from DexFuture (23)
dex_await

Suspends the current DexFiber and resumes when future has completed.

dex_await_boolean

Awaits on future and returns the gboolean result.

dex_await_boxed

Awaits on future and returns the G_TYPE_BOXED based result.

dex_await_double

Awaits on future and returns the result as an double.

dex_await_enum

Awaits on future and returns the enum result.

dex_await_flags

Awaits on future and returns the flags result.

dex_await_float

Awaits on future and returns the result as an float.

dex_await_int

Awaits on future and returns the result as an int.

dex_await_int64

Awaits on future and returns the result as an int64.

dex_await_object

Awaits on future and returns the GObject-based result.

dex_await_pointer

Calls dex_await() and returns the value of g_value_get_pointer(), otherwise error is set if the future rejected.

dex_await_string

Awaits on future and returns the string result.

dex_await_uint

Awaits on future and returns the result as an uint.

dex_await_uint64

Awaits on future and returns the result as an uint64.

dex_await_variant

Awaits on future and returns the G_TYPE_VARIANT based result.

since: 0.4

dex_future_disown

Disowns a future, allowing it to run to completion even though there may be no observer interested in the futures completion or rejection.

since: 0.4

dex_future_get_name
No description available.

dex_future_get_status
No description available.

dex_future_get_value
No description available.

dex_future_is_pending

This is a convenience function equivalent to calling dex_future_get_status() and checking for DEX_FUTURE_STATUS_PENDING.

dex_future_is_rejected

This is a convenience function equivalent to calling dex_future_get_status() and checking for DEX_FUTURE_STATUS_REJECTED.

dex_future_is_resolved

This is a convenience function equivalent to calling dex_future_get_status() and checking for DEX_FUTURE_STATUS_RESOLVED.

dex_future_set_static_name

Sets the name of the future with a static/internal string.

Methods inherited from DexObject (2)
dex_ref

Acquires a reference on the given object, and increases its reference count by one.

dex_unref

Releases a reference on the given object, and decreases its reference count by one.