Servidor Rserve: como encerrar uma instância de bloqueio (eval levando uma eternidade)?

Preciso executar Revals de uma maneira multiencadeada, o que é algoRserve fornece muito bem. Mas, se a avaliação de uma instância demorar muito, eu preciso desligar a instância que está computando a avaliação de bloqueio. Tanto quanto eu testei, a instância dada se recusará a desligar até que a avaliação seja concluída (aparentemente, ele precisa buscar o resultado, antes de ouvir novamente). Então aqui está a minha pergunta:

Existe uma maneira de obter um identificador de java na instância de bloqueio (algo como umProcess objeto), de modo que eu possa matar com força bruta / encerrar o eval (algo comoprocess.destroy())? Em outras palavras, quando solicito um eval (crie uma conexão, ative um comando), como faço para estabelecer um relacionamento entre o eval que está sendo processado e a instância do Rsere relacionada a ele, via java?

Ou perdi algo sobre o Rserve que já permite lidar com esse tipo de necessidade?

Nota: Eu já tentei executar tudo (todas as avaliações) viaserverEval() em vez do normaleval, que executa os cálculos na instância principal, mas é claro que isso não é satisfatório, pois usa apenas um processo (o principal). Esse eu posso matar, mas meu principal objetivo era poder encerrar individualmente uma avaliação de bloqueio, executando em uma instância individual. E, naturalmente, mantenha a vantagem dos meus 8 núcleos de CPU, ou seja, preserve o paralelismo. Não há sentido em usar o Rserve de outra forma (nesse caso, o mecanismo JRI seria mais do que suficiente).

Nota: Eu gostaria de evitar esse tipo de coisa (fio), lidando com várias instâncias do próprio servidor principal, em portas diferentes. Isso não é uma opção.

Eu já tentei obter informações na lista de endereços do Rserve, mas não foram respondidas. Espero ter me esclarecido o suficiente para obter uma resposta ou comentário útil aqui. Caso contrário, peça detalhes. Muito obrigado antecipadamente.

Editar: Eu também testeiRCaller, que lida com quantas instâncias do R one é necessário, mas, como está gravando resultados em arquivos XML para posterior análise do lado do java (sem realmente usar um protocolo de comunicação como o Rserve faria), é muito lento para o que preciso fazer executar ...

questionAnswers(2)

yourAnswerToTheQuestion