[R] Communicating with R through a named pipe: display refresh problem
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Jan 22 16:08:08 CET 2008
Rather, non-interactive R does not run an event loop. The usual way
around this is to use a pty, as R run from a pty is considered to be
interactive.
(Whether a fifo and a named pipe are the same concept is moot: some OSes
have one and not the other.)
The plan is to use threads in due course to handle X11 events.
On Tue, 22 Jan 2008, Parker Jones wrote:
>
> Hello,
>
> On a linux system I'm trying to send commands to R through a named pipe and am *nearly* successful. I can send R commands and can plot graphs. The only problem I have is getting the x11 display to refresh - it appears to hang because of the pipe.
>
> The R server:
> $ mkfifo R_pipe
> $ R --no-save < R_pipe
>
> The R client:
> $ cat>> R_pipe
>
> Now, I can send R commands down the pipe:
>
> Client side:
> x <- seq(1,10)
> x
>
> Server side:
>> x <- seq(1:10)
>> x
> [1] 1 2 3 4 5 6 7 8 9 10
>
> This is perfect.
>
> Now if I try to create a plot, e.g. plot(1:100), the server shows
>> plot(1:100)
> and the plot appears. However, if a window briefly obscures the graphical output, the x11 device won't refresh the display. It would appear the pipe is blocking the refresh.
>
> Can anyone else confirm this happens and any suggestions how to get the display to refresh?
>
> Thanks in advance,
> PJ
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list