erlang's global lock
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

19 строки
582 B

1 год назад
1 год назад
1 год назад
1 год назад
  1. #include "erl_nif.h"
  2. static ERL_NIF_TERM pidToInt(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]) {
  3. ErlNifUInt64 TermInt = (ErlNifUInt64)argv[0];
  4. return enif_make_uint64(env, TermInt);
  5. }
  6. static ERL_NIF_TERM intToPid(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]) {
  7. ErlNifUInt64 Pid;
  8. if (!enif_get_uint64(env, argv[0], &Pid))
  9. return enif_make_badarg(env);
  10. return (ERL_NIF_TERM)Pid;
  11. }
  12. static ErlNifFunc nif_funcs[] = {
  13. {"pidToInt", 1, pidToInt},
  14. {"intToPid", 1, intToPid}
  15. };
  16. ERL_NIF_INIT(eGPidInt, nif_funcs, NULL, NULL, NULL, NULL);