globalcontext.h
Include dependency graph for globalcontext.h:
This graph shows which files directly or indirectly include globalcontext.h:
Typedefs
-
typedef struct Module Module
Functions
-
GlobalContext *globalcontext_new()
-
void globalcontext_destroy(GlobalContext *glb)
-
Context *globalcontext_get_process_nolock(GlobalContext *glb, int32_t process_id)
-
Context *globalcontext_get_process_lock(GlobalContext *glb, int32_t process_id)
-
void globalcontext_get_process_unlock(GlobalContext *glb, Context *c)
-
bool globalcontext_process_exists(GlobalContext *glb, int32_t process_id)
-
void globalcontext_send_message(GlobalContext *glb, int32_t process_id, term t)
-
void globalcontext_send_message_nolock(GlobalContext *glb, int32_t process_id, term t)
-
void globalcontext_init_process(GlobalContext *glb, Context *ctx)
-
bool globalcontext_register_process(GlobalContext *glb, int atom_index, int local_process_id)
-
int globalcontext_get_registered_process(GlobalContext *glb, int atom_index)
-
bool globalcontext_unregister_process(GlobalContext *glb, int atom_index)
-
void globalcontext_maybe_unregister_process_id(GlobalContext *glb, int process_id)
-
int globalcontext_insert_atom(GlobalContext *glb, AtomString atom_string)
-
int globalcontext_insert_atom_maybe_copy(GlobalContext *glb, AtomString atom_string, int copy)
-
bool globalcontext_is_atom_index_equal_to_atom_string(GlobalContext *glb, int atom_index_a, AtomString atom_string_b)
-
static inline bool globalcontext_is_term_equal_to_atom_string(GlobalContext *global, term atom_a, AtomString atom_string_b)
-
static inline term globalcontext_make_atom(GlobalContext *glb, AtomString string)
-
AtomString globalcontext_atomstring_from_term(GlobalContext *glb, term t)
-
term globalcontext_existing_term_from_atom_string(GlobalContext *glb, AtomString atom_string)
-
int globalcontext_insert_module(GlobalContext *global, Module *module)
-
Module *globalcontext_get_module_by_index(GlobalContext *global, int index)
-
Module *globalcontext_get_module(GlobalContext *global, AtomString module_name_atom)
-
bool globalcontext_demonitor(GlobalContext *global, uint64_t ref_ticks)
-
static inline uint64_t globalcontext_get_ref_ticks(GlobalContext *global)
-
struct GlobalContext
Collaboration diagram for GlobalContext:
Public Members
-
struct ListHead ready_processes
-
struct ListHead running_processes
-
struct ListHead waiting_processes
-
SpinLock processes_spinlock
-
struct SyncList refc_binaries
-
struct SyncList processes_table
-
struct SyncList registered_processes
-
struct SyncList listeners
-
struct SyncList resource_types
-
struct SyncList select_events
-
int32_t last_process_id
-
SpinLock atom_insert_lock
-
struct AtomsHashTable *atoms_table
-
struct ValuesHashTable *atoms_ids_table
-
struct AtomsHashTable *modules_table
-
RWLock *modules_lock
-
Module **modules_by_index
-
int loaded_modules_count
-
struct SyncList avmpack_data
-
struct TimerList timer_list
-
SpinLock timer_spinlock
-
unsigned long long ref_ticks
-
SpinLock ref_ticks_spinlock
- int ATOMIC online_schedulers
-
int running_schedulers
- bool ATOMIC waiting_scheduler
-
Mutex *schedulers_mutex
-
CondVar *schedulers_cv
- bool ATOMIC scheduler_stop_all
-
SpinLock env_spinlock
-
void *platform_data
-
struct ListHead ready_processes