R socketConnection-连接未打开,无法读取

R socketConnection-连接未打开,无法读取,r,sockets,readable,R,Sockets,Readable,我正在尝试调用socketConnection上的load()函数。当我建立连接(在两个R进程之间)时,我检查套接字信息,我看到: > s <- socketConnection(host = "localhost", 12345, server = FALSE, blocking=TRUE, open = "rb") > s description class mode t

我正在尝试调用
socketConnection
上的
load()
函数。当我建立连接(在两个R进程之间)时,我检查套接字信息,我看到:

> s <- socketConnection(host = "localhost", 12345, server = FALSE, blocking=TRUE, open = "rb")
> s
        description               class                mode                text
"->localhost:12345"          "sockconn"                "rb"            "binary"
             opened            can read           can write
           "opened"               "yes"               "yes"
> s
        description               class                mode                text
"->localhost:12345"          "sockconn"                "rb"            "binary"
             opened            can read           can write
           "opened"               "yes"               "yes"
> z <- gzcon(s)
> z
               description                      class
"gzcon(->localhost:12345)"                    "gzcon"
                      mode                       text
                      "rb"                   "binary"
                    opened                   can read
                  "opened"                       "no"
                 can write
                     "yes"
> s
               description                      class
"gzcon(->localhost:12345)"                    "gzcon"
                      mode                       text
                      "rb"                   "binary"
                    opened                   can read
                  "opened"                       "no"
                 can write
                     "yes"
我花了一段时间才弄明白为什么我看到套接字说“can read=yes”,而错误消息说它不可读。事实证明,在执行
load()
时,连接被gzcon对象包装。如果我自己包装,我会看到:

> s <- socketConnection(host = "localhost", 12345, server = FALSE, blocking=TRUE, open = "rb")
> s
        description               class                mode                text
"->localhost:12345"          "sockconn"                "rb"            "binary"
             opened            can read           can write
           "opened"               "yes"               "yes"
> s
        description               class                mode                text
"->localhost:12345"          "sockconn"                "rb"            "binary"
             opened            can read           can write
           "opened"               "yes"               "yes"
> z <- gzcon(s)
> z
               description                      class
"gzcon(->localhost:12345)"                    "gzcon"
                      mode                       text
                      "rb"                   "binary"
                    opened                   can read
                  "opened"                       "no"
                 can write
                     "yes"
> s
               description                      class
"gzcon(->localhost:12345)"                    "gzcon"
                      mode                       text
                      "rb"                   "binary"
                    opened                   can read
                  "opened"                       "no"
                 can write
                     "yes"
>s
描述类模式文本
->localhost:12345“sockconn”rb“二进制文件”
打开可以读可以写
“打开”“是”“是”
>z z
描述类
“gzcon(->本地主机:12345)”“gzcon”
模式文本
“rb”“二进制”
我可以阅读
“打开”“否”
会写
“是的”
>
描述类
“gzcon(->本地主机:12345)”“gzcon”
模式文本
“rb”“二进制”
我可以阅读
“打开”“否”
会写
“是的”
gzcon将连接转换为不可读。
所以我的问题是,如何从套接字执行加载,或者如何强制gzcon使连接保持可读性?

那么您是R新手,您要做的第一件事就是玩套接字?这似乎相当不寻常。你在这里的最终目标是什么?是的。对R来说是新手,但获得了将工作区从一个进程转移到另一个进程的任务。