author | wenzelm |
Mon, 11 Sep 2023 19:30:48 +0200 | |
changeset 78659 | b5f3d1051b13 |
parent 73587 | d1767bcb79ec |
permissions | -rw-r--r-- |
(* Title: Pure/ML/ml_pid.ML Author: Makarius Native PID for ML process. *) signature ML_PID = sig val get: unit -> int end; structure ML_Pid: ML_PID = struct \<^if_windows>\<open> val get = Foreign.buildCall0 (Foreign.getSymbol (Foreign.loadLibrary "kernel32.dll") "GetCurrentProcessId", (), Foreign.cInt); \<close> \<^if_unix>\<open> val get = Posix.ProcEnv.getpid #> Posix.Process.pidToWord #> SysWord.toLargeInt; \<close> end;