当我执行某些事件时,我只是不知道如何删除侦听器。我在使用 websockets 时遇到了一些泄漏问题,这可能会解决它。
final WebSocket w = asyncHttpClient.prepareGet(url)
.execute(new WebSocketUpgradeHandler.Builder().build())
.get();
w.addWebSocketListener(new WebSocketTextListener() {
public void onMessage(String message) {
listener.onMessage(responseMessage);
// Here is the place I want to do my w.removeWebSocketListener(l);
}
@Override
public void onFragment(String s, boolean b) {
}
public void onOpen(WebSocket websocket) {
}
@Override
public void onClose(WebSocket webSocket) {
}
@Override
public void onError(Throwable throwable) {
}
});
问题是当我创建WebSocketTextListener lis = new ....
并传入时,一个对象需要另一个对象,而另一个对象依赖于此,现在我仍然可以做我想做的事。
看起来很简单,但无法弄清楚。