A logical vector of length length(x) with values FALSE, TRUE, and NA. If it can be established that the process for a cluster node is running, then TRUE is returned. If it does not run, then FALSE is returned. If neither can be inferred, or it times out, then NA is returned.
Details
This function works by checking whether the cluster node process is running or not. This is done by querying the system for its process ID (PID), which is registered by makeClusterPSOCK() when the node starts. If the PID is not known, the NA is returned. On Unix and macOS, the PID is queried using tools::pskill() with fallback to system("ps"). On MS Windows, system2("tasklist") is used, which may take a long time if there are a lot of processes running. For details, see the internalpid_exists() function.
Examples
cl <- makeClusterPSOCK(2)## Check if cluster node #2 is aliveprint(isNodeAlive(cl[[2]]))## Check all nodesprint(isNodeAlive(cl))
See Also
Use parallel::stopCluster() to shut down cluster nodes. If that's not sufficient, killNode() may be attempted.