author | nipkow |
Tue, 17 Jun 2025 14:11:40 +0200 | |
changeset 82733 | 8b537e1af2ec |
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;