Module vibe.core.core

This module contains the core functionality of the vibe framework.

Functions

Name Description
createFileDescriptorEvent Creates an event to wait on an existing file descriptor.
createTimer Creates a new timer without arming it.
enableWorkerThreads Compatibility stub - will be deprecated soon.
exitEventLoop Stops the currently running event loop.
getTaskLocal Returns a task/fiber specific variable. Scheduled for deprecation.
isTaskLocalSet Returns a task/fiber specific variable. Scheduled for deprecation.
lowerPrivileges Sets the effective user and group ID to the ones configured for privilege lowering.
processEvents Process all pending events without blocking.
rawYield Yields execution of this task until an event wakes it up again.
runEventLoop Starts the vibe event loop.
runTask Runs a new asynchronous task.
runWorkerTask Runs a new asynchronous task in a worker thread.
runWorkerTaskDist Runs a new asynchronous task in all worker threads concurrently.
setIdleHandler Sets a callback that is called whenever no events are left in the event queue.
setTaskEventCallback Sets a callback that is invoked whenever a task changes its status.
setTaskLocal Sets a variable specific to the calling task/fiber. Scheduled for deprecation.
setTaskStackSize Sets the stack size for tasks.
setTimer Returns a new armed timer.
sleep Suspends the execution of the calling task for the specified amount of time.
workerThreadCount The number of worker threads.
yield Suspends the execution of the calling task to let other tasks and events be handled.

Structs

Name Description
TaskLocal Implements a task local storage variable.
Timer Represents a timer.

Enums

Name Description
TaskEvent High level state change events for a Task

Global variables

Name Type Description
MaxTaskParameterSize int The maximum combined size of all parameters passed to a task delegate
VibeVersionString string A version string representing the current vibe version

Authors

Sönke Ludwig

Copyright

© 2012-2014 RejectedSoftware e.K.

License

Subject to the terms of the MIT license, as written in the included LICENSE.txt file.