Java Twitter4j TwitterStream筛选器()无法更新参数

Java Twitter4j TwitterStream筛选器()无法更新参数,java,twitter,twitter4j,Java,Twitter,Twitter4j,我有一个TwitterStream对象: static TwitterStream twitterStream = new TwitterStreamFactory().getInstance(); 我向其中添加了一个侦听器,并添加了一些要跟踪的用户ID(用户ID是正确的,这部分工作正常): 问题是,在监听器内部,在onStatus(Status状态)中,我想添加一个要跟踪的用户。我试过两种方法,第一种是简单地 twitterStream.filter(new FilterQuery(newA

我有一个
TwitterStream
对象:

static TwitterStream twitterStream = new TwitterStreamFactory().getInstance();
我向其中添加了一个侦听器,并添加了一些要跟踪的用户ID(用户ID是正确的,这部分工作正常):

问题是,在监听器内部,在
onStatus(Status状态)
中,我想添加一个要跟踪的用户。我试过两种方法,第一种是简单地

twitterStream.filter(new FilterQuery(newArray));
这里的
newArray
是旧的加上新的用户id,我也尝试过调用它

twitterStream.cleanUp();
过滤器()之前
。在这两种情况下,代码似乎都在运行,但当我从以下帐户之一发送tweet时,我收到了消息

[美国东部时间2014年5月13日星期二15:30:08]建立连接

然后程序终止


如果有必要,我可以提供完整的代码,但如果有任何调试帮助,我将不胜感激。

有时您必须让主线程休眠一段时间。检查您是否有以下代码:

Thread.sleep(400000)
之后

twitterStream.filter(new FilterQuery(newArray));
之前

twitterStream.cleanUp

通过将twitterStream.filter()移动到ConnectionLifeCycleStener的onCleanup()方法,我能够解决这个问题。这将在清理旧过滤器后使用新过滤器重新启动TwitterStream线程。
twitterStream.cleanUp