16#ifndef POLAR_RUNTIME_SERVICE_THREAD_H
17#define POLAR_RUNTIME_SERVICE_THREAD_H
34 POLAR_ID_SERVICE_NONE = 0,
36 POLAR_ID_SERVICE_DISPATCH,
37 POLAR_ID_SERVICE_MEMORY_DISPOSAL,
38 POLAR_ID_SERVICE_MODULE,
39 POLAR_ID_SERVICE_SELECTOR,
40 POLAR_ID_SERVICE_THREAD_SYNC,
41 POLAR_ID_SERVICE_TYPE_REGISTRY,
42 POLAR_ID_SERVICE_TYPE_WORK,
48#define POLAR_ID_SERVICE_FIRST ( POLAR_ID_SERVICE_NONE + 1 )
50#define POLAR_MASK_REQUEST_SERVICE 0xFF00
51#define POLAR_MASK_REQUEST_OPERATION 0xFF
52#define POLAR_SHIFT_SERVICE_REQUEST 8
54#define POLAR_SERVICE_DISPATCH ( polar_array_runtime_services[POLAR_ID_SERVICE_DISPATCH] )
55#define POLAR_SERVICE_MEMORY_DISPOSAL ( polar_array_runtime_services[POLAR_ID_SERVICE_MEMORY_DISPOSAL] )
56#define POLAR_SERVICE_MODULE ( polar_array_runtime_services[POLAR_ID_SERVICE_MODULE] )
57#define POLAR_SERVICE_SELECTOR ( polar_array_runtime_services[POLAR_ID_SERVICE_SELECTOR] )
58#define POLAR_SERVICE_THREAD_SYNC ( polar_array_runtime_services[POLAR_ID_SERVICE_THREAD_SYNC] )
59#define POLAR_SERVICE_TYPE_REGISTRY ( polar_array_runtime_services[POLAR_ID_SERVICE_TYPE_REGISTRY] )
60#define POLAR_SERVICE_TYPE_WORK ( polar_array_runtime_services[POLAR_ID_SERVICE_TYPE_WORK] )
68extern thrd_t polar_id_main_thread;
69extern thrd_t polar_id_rts_thread;
73POLAR_FUNCTION_INTERNAL intptr_t
74polar_runtime_service_thread_init(
void );
77POLAR_FUNCTION_INTERNAL
void
78polar_runtime_service_thread_finalize(
void );
Definition polar-runtime-service.h:28
Definition polar-thread-message-queue.h:23