在R中中断Java调用或回调或类似的操作
我使用这个名为“Rjms”的包,它是RJava的包装器,用于从ApacheActiveMQ推送/消费。包中有一个名为“consume”的函数,我使用它从队列中使用。问题是,一旦我进行了调用,直到从队列接收到消息,应用程序才会挂起。如果队列为空,则整个脚本将暂停。我想加上一段时间,如果消息在5分钟内没有发出,我想取消电话 在R中进行调用后,它将在内部调用一些Java函数(我假设)。因此,我不确定R是否能中断这个过程。我在阅读回调的内容,这似乎是个好主意,但在R中找不到任何具体的使用方法。我不确定是否可以给出一个可复制的示例,因为首先需要设置ApacheActiveMQ。但是一般来说,有没有一种方法可以从一个不是R所固有的函数调用中产生呢 任何帮助都将不胜感激在R中中断Java调用或回调或类似的操作,java,r,activemq,rjava,Java,R,Activemq,Rjava,我使用这个名为“Rjms”的包,它是RJava的包装器,用于从ApacheActiveMQ推送/消费。包中有一个名为“consume”的函数,我使用它从队列中使用。问题是,一旦我进行了调用,直到从队列接收到消息,应用程序才会挂起。如果队列为空,则整个脚本将暂停。我想加上一段时间,如果消息在5分钟内没有发出,我想取消电话 在R中进行调用后,它将在内部调用一些Java函数(我假设)。因此,我不确定R是否能中断这个过程。我在阅读回调的内容,这似乎是个好主意,但在R中找不到任何具体的使用方法。我不确定是
Link-Rjms-Package-我无法确切说明R在做什么,但听起来好像它在调用阻塞消息消费者接收方法,该方法将永远等待消息到达。有一个定时的替代方案,但我不知道你是否有权访问它。通常,您可以通过调用MessageConsumer的close()方法关闭MessageConsumer来中断该方法,如果您可以调用该方法,那么它应该中断并返回null,或者可能抛出一个异常(我忘记了是哪个异常)。我对R不太了解,所以不能提供任何其他建议,打破阻塞呼叫往往因情况而异 请注意,由于提出了这个问题,“Rjms”包已从CRAN存储库中删除。