core.sys.linux.sched

D binding for Linux specific scheduler control and thread spawning methods.

Defines functions sched_setaffinity and sched_getaffinity and the data types they operate on, as well as clone and unshare and their related constants.

Types 2

aliascpu_mask = c_ulong

Type for array elements in 'cpu_set_t'.

structcpu_set_t

Data structure to describe CPU mask.

Fields
cpu_mask[__CPU_SETSIZE / __NCPUBITS] __bits

Functions 20

fnsize_t __CPUELT()(size_t cpu) pure
fncpu_mask __CPUMASK()(size_t cpu) pure
fncpu_set_t * __CPU_ALLOC()(size_t count)
fnsize_t __CPU_ALLOC_SIZE()(size_t count) pure
fnvoid __CPU_FREE()(cpu_set_t * set)
fncpu_mask __CPU_SET_S()(size_t cpu, size_t setsize, cpu_set_t * cpusetp) pure
fnbool __CPU_ISSET_S()(size_t cpu, size_t setsize, cpu_set_t * cpusetp) pure
fnint __CPU_COUNT_S()(size_t setsize, cpu_set_t * cpusetp) pure
fncpu_set_t * CPU_ALLOC()(size_t count)Access macros for 'cpu_set' (missing a lot of them)
fnsize_t CPU_ALLOC_SIZE()(size_t count) pure
fnvoid CPU_FREE()(cpu_set_t * set)
fncpu_mask CPU_SET()(size_t cpu, cpu_set_t * cpusetp) pure
fnbool CPU_ISSET()(size_t cpu, cpu_set_t * cpusetp) pure
fnint CPU_COUNT()(cpu_set_t * cpusetp) pure
fnint CPU_COUNT_S()(size_t setsize, cpu_set_t * cpusetp) pure
fnint sched_setaffinity(pid_t pid, size_t cpusetsize, cpu_set_t * mask)
fnint sched_getaffinity(pid_t pid, size_t cpusetsize, cpu_set_t * mask)
fnint clone(int function(void *), void * child_stack, int flags, void * arg, ...)
fnint unshare(int flags) @trusted
fnint setns(int fd, int nstype)

Variables 14

enumvarCLONE_FILES = 0x400
enumvarCLONE_FS = 0x200
enumvarCLONE_NEWCGROUP = 0x2000000
enumvarCLONE_NEWIPC = 0x8000000
enumvarCLONE_NEWNET = 0x40000000
enumvarCLONE_NEWNS = 0x20000
enumvarCLONE_NEWPID = 0x20000000
enumvarCLONE_NEWUSER = 0x10000000
enumvarCLONE_NEWUTS = 0x4000000
enumvarCLONE_SIGHAND = 0x800
enumvarCLONE_SYSVSEM = 0x40000
enumvarCLONE_THREAD = 0x10000
enumvarCLONE_VFORK = 0x4000
enumvarCLONE_VM = 0x100