[Rd] mcparallel (parallel:::mcexit) does not call finalizers
Karl Forner
karl.forner at gmail.com
Thu Jun 16 18:09:53 CEST 2016
Hello,
In the context of trying to cover a package code that use parallelized
tests using the covr package, I realized that code executed using
mcparallel() was not covered,
cf https://github.com/jimhester/covr/issues/189#issuecomment-226492623
>From my understanding, it seems that the package finalizer set by covr (cf
https://github.com/jimhester/covr/blob/79f7e0434f3d14a48c6fea994b67b9814b34e4e5/R/covr.R#L348)
is not called, because the forked process exits using parallel:::mcexit,
which is a non standard exit and does not call some of the cleanup code
(e.g. the R_CleanUp function is not called).
I was wondering if a modification of the parallel mcexit could be
considered, to make it call the finalizers, possibly triggered by a
parameter or an option, or if there are solid reasons not to do so.
Regards,
Karl Forner
[[alternative HTML version deleted]]
More information about the R-devel
mailing list