0

curl.opts を設定して curlPerform を送信しています

curl.opts = curlOptions(
  httpheader = c(
    'Content-Type'    = "application/x-www-form-urlencoded; charset=UTF-8",
    'Accept'          = "application/json"
  ),
  verbose = FALSE,
  header = TRUE,
  useragent = "RCurl"    
) 

そして最終的に「192.168.141.136に接続できませんでした:バッファスペースがありません」というエラーが表示されます。このプログラムを何日も継続して実行する必要がありますが、これは約 6 分後に発生します。バッファの最大値を高く設定する方法はありますか? または、「バッファスペース」がどれだけ残っているかを確認する方法はありますか? もしそうなら、Rを再起動してプログラムを再開するように設定できます。これは、プログラムがしばらく実行され、停止し、手動で再起動した場合に発生することに注意してください。「バッファ」がクリアされることはありません。私が見つけたそれをクリアする唯一の方法は、Rを再起動することです.

それが役立つ場合、別のRウィンドウでこれを行っているだけでも、Rstudioとの「接続」も失われ、Rを閉じるまでこのエラーが発生した後、インターネットへの接続も失われます

編集: これは traceback() の部分的な結果です (残りは問題ではありません)

11: fun(structure(list(message = msg, call = sys.call()), class = c(typeName, 
        "GenericCurlError", "error", "condition")))
10: function (type, msg, asError = TRUE) 
    {
        if (!is.character(type)) {
            i = match(type, CURLcodeValues)
            typeName = if (is.na(i)) 
                character()
            else names(CURLcodeValues)[i]
        }
        typeName = gsub("^CURLE_", "", typeName)
        fun = (if (asError) 
            stop
        else warning)
        fun(structure(list(message = msg, call = sys.call()), class = c(typeName, 
            "GenericCurlError", "error", "condition")))
    }(7L, "Failed to connect to 192.168.141.136: No buffer space", 
        TRUE)
9: .Call("R_curl_easy_perform", curl, .opts, isProtected, .encoding, 
       PACKAGE = "RCurl")
8: curlPerform(url = "http://gt-tradeview/House/TradeView/ajax/varys", 
       postfields = mkURL(parameters), .opts = curl.opts, writefunction = r$update, 
       post = 1L, curl = r$curl()) at functiondefinitionsLive.R#211
7: value[[3L]](cond)
6: tryCatchOne(expr, names, parentenv, handlers[[1L]])
5: tryCatchList(expr, classes, parentenv, handlers)
4

2 に答える 2

0

getURL コマンドでも同じ問題が発生していました。CloseAllConnections() を試しましたが、うまくいかなかったようです。

R セッションを再起動すると、問題は自動的に解決されました。ただし、RStudio ( R Session ) を長時間開いたときに問題が発生したことを認めなければなりません。空の R セッションが行うメモリ使用量である可能性があります

于 2015-04-03T20:18:59.677 に答える