[Rd] Are Rprintf and REprintf thread-safe?
Martin Morgan
martin.morgan at roswellpark.org
Tue Nov 21 22:25:28 CET 2017
On 11/21/2017 04:12 PM, Winston Chang wrote:
> Thanks - I'll find another way to send messages to the main thread for printing.
The CRAN synchronicity and Bioconductor BiocParallel packages provide
inter-process locks that you could use to surround writes (instead of
sending message to the main thread), also easy enough to incorporate at
the C level using the BH package as source for relevant boost header.
Martin
>
> -Winston
>
> On Tue, Nov 21, 2017 at 12:42 PM, <luke-tierney at uiowa.edu> wrote:
>> On Tue, 21 Nov 2017, Winston Chang wrote:
>>
>>> Is it safe to call Rprintf and REprintf from a background thread? I'm
>>> working on a package that makes calls to fprintf(stderr, ...) on a
>>> background thread when errors happen, but when I run R CMD check, it
>>> says:
>>>
>>> Compiled code should not call entry points which might terminate R nor
>>> write to stdout/stderr instead of to the console, nor the system RNG.
>>>
>>> Is it safe to replace these calls with REprintf()?
>>
>>
>> Only if you enjoy race conditions or segfaults.
>>
>> Rprintf and REprintf are not thread-safe.
>>
>> Best,
>>
>> luke
>>
>>
>>>
>>> -Winston
>>>
>>> ______________________________________________
>>> R-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>
>> --
>> Luke Tierney
>> Ralph E. Wareham Professor of Mathematical Sciences
>> University of Iowa Phone: 319-335-3386
>> Department of Statistics and Fax: 319-335-3017
>> Actuarial Science
>> 241 Schaeffer Hall email: luke-tierney at uiowa.edu
>> Iowa City, IA 52242 WWW: http://www.stat.uiowa.edu
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
This email message may contain legally privileged and/or...{{dropped:2}}
More information about the R-devel
mailing list