diff options
author | Rickard Green <[email protected]> | 2016-02-02 10:33:34 +0100 |
---|---|---|
committer | Rickard Green <[email protected]> | 2016-02-02 10:33:34 +0100 |
commit | 31911a7d87c0de0cde4ce166c9ad35be08597e2f (patch) | |
tree | dcf92fe86eb71e7c1042c07bda9927c9db4b9d1d /erts/emulator/beam/erl_nif.c | |
parent | f269d952033a177836fa5e949857035c6b6f9c6b (diff) | |
parent | 178cff0a09223da707ca8472a71dbe4125466493 (diff) | |
download | otp-31911a7d87c0de0cde4ce166c9ad35be08597e2f.tar.gz otp-31911a7d87c0de0cde4ce166c9ad35be08597e2f.tar.bz2 otp-31911a7d87c0de0cde4ce166c9ad35be08597e2f.zip |
Merge branch 'maint'
* maint:
Introduce time management in native APIs
Introduce time warp safe replacement for safe_fixed option
Introduce time warp safe trace timestamp formats
Conflicts:
erts/emulator/beam/erl_bif_trace.c
erts/emulator/beam/erl_driver.h
erts/emulator/beam/erl_nif.h
erts/emulator/beam/erl_trace.c
erts/preloaded/ebin/erlang.beam
Diffstat (limited to 'erts/emulator/beam/erl_nif.c')
-rw-r--r-- | erts/emulator/beam/erl_nif.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_nif.c b/erts/emulator/beam/erl_nif.c index d659788f30..b057ec7770 100644 --- a/erts/emulator/beam/erl_nif.c +++ b/erts/emulator/beam/erl_nif.c @@ -1188,6 +1188,26 @@ void enif_thread_exit(void *resp) { erl_drv_thread_exit(resp); } int enif_thread_join(ErlNifTid tid, void **respp) { return erl_drv_thread_join(tid,respp); } int enif_getenv(const char *key, char *value, size_t *value_size) { return erl_drv_getenv(key, value, value_size); } +ErlNifTime enif_monotonic_time(ErlNifTimeUnit time_unit) +{ + return (ErlNifTime) erts_napi_monotonic_time((int) time_unit); +} + +ErlNifTime enif_time_offset(ErlNifTimeUnit time_unit) +{ + return (ErlNifTime) erts_napi_time_offset((int) time_unit); +} + +ErlNifTime +enif_convert_time_unit(ErlNifTime val, + ErlNifTimeUnit from, + ErlNifTimeUnit to) +{ + return (ErlNifTime) erts_napi_convert_time_unit((ErtsMonotonicTime) val, + (int) from, + (int) to); +} + int enif_fprintf(void* filep, const char* format, ...) { int ret; |