Package com.install4j.api.macos
Class MacProcesses
java.lang.Object
com.install4j.api.macos.MacProcesses
Collection of static methods to check for running processes on macOS and terminate them.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Class that holds information about running macOS processes. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
Determine if any of the installed launchers are currently running.static MacProcesses.Info[]
Get a list of all running processes the installer can see.static boolean
terminateProcesses
(int[] processIds, boolean force, int timeout) Tries to close the processes with the given ids by sending a VM_CLOSE message to all visible top-level windows.
-
Constructor Details
-
MacProcesses
public MacProcesses()
-
-
Method Details
-
getRunningProcesses
Get a list of all running processes the installer can see.- Returns:
- info objects with module name, process id and further information
-
terminateProcesses
public static boolean terminateProcesses(int[] processIds, boolean force, int timeout) Tries to close the processes with the given ids by sending a VM_CLOSE message to all visible top-level windows.- Parameters:
processIds
- the processes to terminateforce
- if the process should be killed withkill -9
timeout
- the maximum time to wait for the processes to terminate after the message has been sent in milliseconds. The minimum time is 400 ms regardless of a lower setting.- Returns:
true
if all processes have been terminated.
-
areInstalledLaunchersRunning
public static boolean areInstalledLaunchersRunning()Determine if any of the installed launchers are currently running. All launchers in the currently set installation directory are checked. The "Install Files" action performs this check by default and warns the user that processes are running. With this method, you can check for this condition earlier in your installer.- Returns:
true
orfalse
.
-