Приведенный выше код работает, но это блокирующий сервер.
server <- function(){
while(TRUE){
writeLines("Listening...")
con <- socketConnection(host="localhost", port = 6011, blocking=TRUE,
server=TRUE, open="r+")
data <- readLines(con, 1)
print(data)
response <- toupper(data)
writeLines(response, con)
close(con)
}
}
Я пытался использовать "tclTask", чтобы запустить функцию на фоне, но все равно она блокирует R.
tclAfter(1000, server)
Наконец-то я попытался использовать пакет svSocket. Мне удалось запустить сервер, но я не смог запрограммировать функцию, которая будет обрабатывать данные от клиентов. Я изменил функцию «processSocket», но она не обрабатывала запросы.