vibe.core.core

This module contains the core functionality of the vibe.d framework.

Public Imports

vibe.core.task
public import vibe.core.task;
Undocumented in source.

Members

Enums

isCallable
eponymoustemplate isCallable(CALLABLE, ARGS...)
Undocumented in source.
isMethod
eponymoustemplate isMethod(T, alias method, ARGS...)
Undocumented in source.
isNothrowCallable
eponymoustemplate isNothrowCallable(CALLABLE, ARGS...)
Undocumented in source.
isNothrowMethod
eponymoustemplate isNothrowMethod(T, alias method, ARGS...)
Undocumented in source.

Functions

createFileDescriptorEvent
FileDescriptorEvent createFileDescriptorEvent(int file_descriptor, FileDescriptorEvent.Trigger event_mask)

Creates an event to wait on an existing file descriptor.

createLeanTimer
Timer createLeanTimer(CALLABLE callback)

Creates a new timer with a lean callback mechanism.

createTimer
Timer createTimer(void delegate() nothrow @(safe) callback)

Creates a new timer without arming it.

disableDefaultSignalHandlers
void disableDefaultSignalHandlers()

Disables the signal handlers usually set up by vibe.d.

exitEventLoop
void exitEventLoop(bool shutdown_all_threads)

Stops the currently running event loop.

getgrgid
group* getgrgid(gid_t )
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
getgrnam
group* getgrnam(char* )
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
hibernate
void hibernate(void delegate() @(safe) nothrow on_interrupt)

Suspends the execution of the calling task until switchToTask is called manually.

lowerPrivileges
void lowerPrivileges(string uname, string gname)

Sets the effective user and group ID to the ones configured for privilege lowering.

lowerPrivileges
void lowerPrivileges()
Undocumented in source. Be warned that the author may not have intended to support it.
performIdleProcessing
void performIdleProcessing(bool force_process_events)
Undocumented in source. Be warned that the author may not have intended to support it.
printRunningTasks
void printRunningTasks()

Dumps a list of all active tasks of the calling thread.

processEvents
bool processEvents()

Process all pending events without blocking.

recycleFiber
void recycleFiber(TaskFiber fiber)
Undocumented in source. Be warned that the author may not have intended to support it.
runApplication
int runApplication(string[]* args_out)

Performs final initialization and runs the event loop.

runEventLoop
int runEventLoop()

Starts the vibe.d event loop for the calling thread.

runEventLoopOnce
ExitReason runEventLoopOnce()

Wait once for events and process them.

runTask
Task runTask(void delegate(ARGS) @(safe) nothrow task, ARGS args)

Runs a new asynchronous task.

runTask
Task runTask(void delegate(ARGS) @(system) nothrow task, ARGS args)
Task runTask(CALLABLE task, ARGS args)
deprecated Task runTask(void delegate(ARGS) @(safe) task, ARGS args)
deprecated Task runTask(void delegate(ARGS) @(system) task, ARGS args)
deprecated Task runTask(CALLABLE task, ARGS args)
Task runTask(TaskSettings settings, void delegate(ARGS) @(safe) nothrow task, ARGS args)
Task runTask(TaskSettings settings, void delegate(ARGS) @(system) nothrow task, ARGS args)
Task runTask(TaskSettings settings, CALLABLE task, ARGS args)
deprecated Task runTask(TaskSettings settings, void delegate(ARGS) @(safe) task, ARGS args)
deprecated Task runTask(TaskSettings settings, void delegate(ARGS) @(system) task, ARGS args)
deprecated Task runTask(TaskSettings settings, CALLABLE task, ARGS args)
runTaskScoped
auto runTaskScoped(FT callable, ARGS args)

Runs an asyncronous task that is guaranteed to finish before the caller's scope is left.

runTask_internal
Task runTask_internal()
Undocumented in source. Be warned that the author may not have intended to support it.
runWorkerTask
void runWorkerTask(FT func, ARGS args)
void runWorkerTask(shared(T) object, ARGS args)
void runWorkerTask(TaskSettings settings, FT func, ARGS args)
void runWorkerTask(TaskSettings settings, shared(T) object, ARGS args)
deprecated void runWorkerTask(FT func, ARGS args)
deprecated void runWorkerTask(shared(T) object, ARGS args)
deprecated void runWorkerTask(TaskSettings settings, FT func, ARGS args)
deprecated void runWorkerTask(TaskSettings settings, shared(T) object, ARGS args)

Runs a new asynchronous task in a worker thread.

runWorkerTaskDist
void runWorkerTaskDist(FT func, ARGS args)
void runWorkerTaskDist(shared(T) object, ARGS args)
void runWorkerTaskDist(TaskSettings settings, FT func, ARGS args)
void runWorkerTaskDist(TaskSettings settings, shared(T) object, ARGS args)
deprecated void runWorkerTaskDist(FT func, ARGS args)
deprecated void runWorkerTaskDist(shared(T) object, ARGS args)
deprecated void runWorkerTaskDist(TaskSettings settings, FT func, ARGS args)
deprecated void runWorkerTaskDist(TaskSettings settings, shared(T) object, ARGS args)

Runs a new asynchronous task in all worker threads concurrently.

runWorkerTaskDistH
void runWorkerTaskDistH(HCB on_handle, FT func, ARGS args)
void runWorkerTaskDistH(TaskSettings settings, HCB on_handle, FT func, ARGS args)
deprecated void runWorkerTaskDistH(HCB on_handle, FT func, ARGS args)
deprecated void runWorkerTaskDistH(TaskSettings settings, HCB on_handle, FT func, ARGS args)

Runs a new asynchronous task in all worker threads and returns the handles.

runWorkerTaskH
Task runWorkerTaskH(FT func, ARGS args)
Task runWorkerTaskH(shared(T) object, ARGS args)
Task runWorkerTaskH(TaskSettings settings, FT func, ARGS args)
Task runWorkerTaskH(TaskSettings settings, shared(T) object, ARGS args)
deprecated Task runWorkerTaskH(FT func, ARGS args)
deprecated Task runWorkerTaskH(shared(T) object, ARGS args)
deprecated Task runWorkerTaskH(TaskSettings settings, FT func, ARGS args)
deprecated Task runWorkerTaskH(TaskSettings settings, shared(T) object, ARGS args)

Runs a new asynchronous task in a worker thread, returning the task handle.

setIdleHandler
void setIdleHandler(void delegate() @(safe) nothrow del)
void setIdleHandler(bool delegate() @(safe) nothrow del)

Sets a callback that is called whenever no events are left in the event queue.

setTaskCreationCallback
void setTaskCreationCallback(TaskCreationCallback func)

Sets a callback that is invoked whenever new task is created.

setTaskEventCallback
void setTaskEventCallback(TaskEventCallback func)

Sets a callback that is invoked whenever a task changes its status.

setTaskStackSize
void setTaskStackSize(size_t sz)

Sets the stack size to use for tasks.

setTimer
Timer setTimer(Duration timeout, Timer.Callback callback, bool periodic)

Creates a new timer, that will fire callback after timeout

setTimer
Timer setTimer(Duration timeout, void delegate() callback, bool periodic)

Compatibility overload - use a @safe nothrow callback instead.

setupWorkerThreads
void setupWorkerThreads(uint num)

Sets up num worker threads.

sleep
void sleep(Duration timeout)

Suspends the execution of the calling task for the specified amount of time.

sleepUninterruptible
void sleepUninterruptible(Duration timeout)

Suspends the execution of the calling task an an uninterruptible manner.

switchToTask
void switchToTask(Task t)
void switchToTask(Task t, TaskSwitchPriority priority)

Switches execution to the given task.

yield
void yield()

Suspends the execution of the calling task to let other tasks and events be handled.

yieldLock
auto yieldLock()

Returns an object that ensures that no task switches happen during its life time.

Manifest constants

vibeVersionString
enum vibeVersionString;

A version string representing the current vibe.d core version

Properties

isEventLoopRunning
bool isEventLoopRunning [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
logicalProcessorCount
uint logicalProcessorCount [@property getter]

Determines the number of logical processors in the system.

taskScheduler
TaskScheduler taskScheduler [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
workerTaskPool
shared(TaskPool) workerTaskPool [@property getter]

Returns the default worker task pool.

workerThreadCount
size_t workerThreadCount [@property getter]

The number of worker threads used for processing worker tasks.

Structs

FileDescriptorEvent
struct FileDescriptorEvent

Generic file descriptor event.

Timer
struct Timer

Represents a timer.

group
struct group
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.

Variables

s_eventLoopRunning
bool s_eventLoopRunning;
Undocumented in source.

Meta

License

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

Authors

Sönke Ludwig