{
"id": "fn-process-info",
"dataComponent": "process",
"heading": {
"title": "info",
"badges": [
"Process",
"ASYNC"
]
},
"synopsis": "Retrieves environment and runtime details for the current process, asynchronously calling your callback with a keyed array of data.",
"codeBlocks": [
"extend(\"process\")\\n\\n# Example usage\\nprocess:info(info => {\\n has_key(info, \"pid\")\\n has_key(info, \"username\")\\n\\n # Optionally check that info[\"platform\"] is \"linux\" or such\\n slog(string:to_string(info))\\n})\\n\\n# The callback receives a keyed array with fields like \"pid\", \"uid\",\\n# \"username\", \"platform\", \"binary_name\", and so on."
],
"notes": [
"Accepts exactly one argument: a callback function. The callback is invoked asynchronously.",
"The callback receives a KeyedArray containing process-related details, such as:",
"- pid: an integer process ID",
"- uid (on Unix) or 0 on other systems",
"- username: current user name",
"- binary_name: name of the current executable",
"- cwd: current working directory path as a string",
"- platform & architecture: e.g. \"linux\" / \"x86_64\"",
"The test harness or main loop typically calls process:check_tasks to wait for any tasks spawned by process:info to complete."
]
}