[R] newbie: closing unused connection + readline
Aval Sarri
aval.sarri at gmail.com
Sat May 16 15:11:22 CEST 2009
On Sat, May 16, 2009 at 6:12 PM, Gabor Grothendieck
<ggrothendieck at gmail.com> wrote:
> Try explicitly closing it:
>
> close(reader.socket)
>
> or
>
> closeAllConnections()
Thank you Sir but is there a way that it does not get open each time?
I mean following line creates a new text connection each time so how
to avoid it or reuse an open connection?
line.raw <- textConnection(readLines( reader.socket, n = 1, ok = TRUE));
I tried something line this also:
mydataframe <- read.table (socket, sep=",");
but does not work says no input lines.
this also.
mydataframe <- read.table (readLine(socket), sep=",");
what is the best method of doing something like this? I am getting
totally lost between textConnection, socket and getConnection. Now I
am trying to get the connection that was opened and reuse it but then
how do I get connection that was previously opened when running code -
since getConnection() requires a number and for that I need to know
the number of my previously opened connection. So how do I get the
number of textConnection that I open?
Sir any pointers would greatly help.
Thanks and regards
-Aval
>
> On Sat, May 16, 2009 at 8:34 AM, Aval Sarri <aval.sarri at gmail.com> wrote:
>> Hello;
>> I am new to R and trying to read a line from socket connection at a
>> time but at the end of script I am getting "closing unused connection"
>> warning. I am not able to understand how to solve this. I want to read
>> a line from socket and then use read.table/scan on that line but it
>> looks like I am opening multiple connections instead of just one. I
>> think I am doing something wrong or not able to understand correct
>> method of doing this.
>>
>> ---------------------------code------------------------
>> # Create a socket from which to read lines - one at a time (record)
>> reader.socket <- socketConnection( host = 'localhost', 5000,
>> server = TRUE, blocking = TRUE,
>> open = "r", encoding =
>> getOption("encoding") );
>> # now read each record and split/validate it using read.table
>> repeat {
>> # here for each line I am opening new connection! how to avoid it?
>> line.raw <- textConnection(readLines( reader.socket, n = 1, ok = TRUE));
>> line.raw <- read.table(line.raw, sep=",");
>>
>> if ( length(line.raw) < 1)
>> break;
>>
>> print (showConnections());
>> print(warnings());
>> }
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
More information about the R-help
mailing list