isProcessForkedChild: Is the Current Process a Forked Child?

View source: R/fork.R

isProcessForkedChildR Documentation

Is the Current Process a Forked Child?

Description

Returns TRUE if the current process is a fork() of the process in which RcppParallel was originally loaded.

Usage

isProcessForkedChild()

Details

Intel TBB — the parallel backend used by parallelFor() and parallelReduce() — does not support being used in a child process after fork(). Packages that may be invoked from within parallel::mclapply() or similar fork-based parallelism should call isProcessForkedChild() and fall back to a serial code path when it returns TRUE.

On Windows, which has no fork(), this always returns FALSE.

Value

A length-one logical.

Examples

## Not run: 
library(RcppParallel)
isProcessForkedChild()
parallel::mclapply(1:2, function(i) RcppParallel::isProcessForkedChild())

## End(Not run)


RcppParallel documentation built on July 27, 2026, 5:08 p.m.