diff options
author | Rickard Green <[email protected]> | 2015-05-19 22:48:21 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2015-06-15 16:25:46 +0200 |
commit | bfd575ddf985408494d4d3d4933eda2c9ee18326 (patch) | |
tree | 317497adbade085be2ef0f366c097eb26ec3813b /erts/emulator/beam/erl_db.h | |
parent | e6fce01ceb4e9ad27aade58f69857a5d9eb0d734 (diff) | |
download | otp-bfd575ddf985408494d4d3d4933eda2c9ee18326.tar.gz otp-bfd575ddf985408494d4d3d4933eda2c9ee18326.tar.bz2 otp-bfd575ddf985408494d4d3d4933eda2c9ee18326.zip |
ETS busy wait option
Conflicts:
erts/emulator/beam/erl_init.c
erts/etc/common/erlexec.c
Diffstat (limited to 'erts/emulator/beam/erl_db.h')
-rw-r--r-- | erts/emulator/beam/erl_db.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_db.h b/erts/emulator/beam/erl_db.h index 5b4681fc90..5039b71108 100644 --- a/erts/emulator/beam/erl_db.h +++ b/erts/emulator/beam/erl_db.h @@ -61,7 +61,17 @@ union db_table { "ERL_MAX_ETS_TABLES" */ #define ERL_MAX_ETS_TABLES_ENV "ERL_MAX_ETS_TABLES" -void init_db(void); +typedef enum { + ERTS_DB_SPNCNT_NONE, + ERTS_DB_SPNCNT_VERY_LOW, + ERTS_DB_SPNCNT_LOW, + ERTS_DB_SPNCNT_NORMAL, + ERTS_DB_SPNCNT_HIGH, + ERTS_DB_SPNCNT_VERY_HIGH, + ERTS_DB_SPNCNT_EXTREMELY_HIGH +} ErtsDbSpinCount; + +void init_db(ErtsDbSpinCount); int erts_db_process_exiting(Process *, ErtsProcLocks); void db_info(int, void *, int); void erts_db_foreach_table(void (*)(DbTable *, void *), void *); @@ -69,6 +79,7 @@ void erts_db_foreach_offheap(DbTable *, void (*func)(ErlOffHeap *, void *), void *); +extern int erts_ets_rwmtx_spin_count; extern int user_requested_db_max_tabs; /* set in erl_init */ extern int erts_ets_realloc_always_moves; /* set in erl_init */ extern int erts_ets_always_compress; /* set in erl_init */ |