Two things.

   rpy2.rinterface if making sure that R gets initialized only once 
(otherwise everything breaks), which translates at the level of 
rpy2.robjects as a singleton pattern (r singleton of class R).

   For evaluating R code, the locking is somehow ensured by Python's 
GIL. All accesses to R are at the C level, and currently none of this 
code is releasing the GIL. There a locking mechanism already present in 
the C code, but it does not have much influence in the 2.0.x serie (work 
on that is under progress, but that's for 2.1.x). When done, long 
evaluations of R code will not hold the GIL, and that locking mechanism 
will be making sure only one thread is doing R things.



L.


laurent oget wrote:
> Does Rpy2 use any systemwide locking to ensure that only one instance is 
> running at a given time or is this only a process-wide logging to make 
> sure only one thread within one process is using R?
> 
> Thanks,
> 
> Laurent
> 
> 
> ------------------------------------------------------------------------
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> SourcForge Community
> SourceForge wants to tell your story.
> http://p.sf.net/sfu/sf-spreadtheword
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> rpy-list mailing list
> rpy-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rpy-list


------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
rpy-list mailing list
rpy-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rpy-list

Reply via email to