std.thread

Boilerplate:

class ThreadError: object.Exception;

class Thread;

this();

this(void(* fn)());

this(void delegate() dg);

final char[] name();

final void name(char[] n);

final void start();

final bit isRunning();

final void join();

final void suspend();

final void resume();

final void* stackTop();

final void* stackBottom();

final void* regFirst();

final void* regLast();

static void sleep(uint milliseconds);

static void yield();

static uint count();

static void suspendAll();

static void resumeAll();

static Thread getThis();

static Thread [] getAll();

static int opApply(int delegate(inout Thread ) dg);

uintC threadCount();

voidC suspendAllThreads();

voidC resumeAllThreads();

voidC scanAllThreads(void delegate(void*,void*) fn);