Skip to content

how to close connections?

2 messages · Ott Toomet, Brian Ripley

#
Hi everybody,

I am using gzipped files quite extensively and cannot figure out how I
can close (or reuse) connections.  

Example:
1 
2 
...
46 
47 
Error in gzfile("~/tyyq/andmebaasiq/ETU/ETU1997.tsv.gz") : 
	all connections are in use

To use just gzfile without any open/close should be OK as the help
states:

... In general functions using connections will open them if they are not
open, but then close them again, so to leave a connection open call
open explicitly.

I have also experimented with explicit open/close but without any more
success, though, R claims that the connections will be closed.

Any ideas?  Is it my misunderstanding?  What exactly means a
connection is "in use"?

Thanks in advance,

Ott
_                
platform i686-pc-linux-gnu
arch     i686             
os       linux-gnu        
system   i686, linux-gnu  
status                    
major    2                
minor    1.1              
year     2005             
month    06               
day      20               
language R
#
Try this

con <- gzfile("file.gz")
a <- readLines(con, n=1)
showConnections(all=TRUE)
close(con)
showConnections(all=TRUE)

So the connection is opened and closed as it says, but not destroyed.
You do need to call close() explicitly -- from the help file

      'close' closes and destroys a connection.
                     ^^^^^^^^^^^^

There are  'create - open - close - destroy'  states for a connection.
On Thu, 25 Aug 2005, Ott Toomet wrote: