184 BU_EXPORT
extern void bu_parallel(
void (*func)(
int func_cpu_id,
void *func_data),
size_t ncpu,
void *data);
213 #define BU_SEMAPHORE_DEFINE(x) x = bu_semaphore_register(CPP_STR(x))
243 #define BU_SETJUMP setjmp((bu_setjmp_valid[bu_parallel_id()]=1, bu_jmpbuf[bu_parallel_id()]))
244 #define BU_UNSETJUMP (bu_setjmp_valid[bu_parallel_id()]=0)
Header file for the BRL-CAD common definitions.
void bu_semaphore_acquire(unsigned int i)
int bu_setjmp_valid[MAX_PSW]
void bu_nice_set(int newnice)
routines for parallel processing
void bu_semaphore_free(void)
void bu_semaphore_init(unsigned int nsemaphores)
DEPRECATED int bu_is_parallel(void)
subroutine to determine if we are multi-threaded
size_t bu_avail_cpus(void)
jmp_buf bu_jmpbuf[MAX_PSW]
void bu_parallel(void(*func)(int func_cpu_id, void *func_data), size_t ncpu, void *data)
int bu_semaphore_register(const char *name)
semaphore implementation
void bu_semaphore_release(unsigned int i)