Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于*map的一些疑问 #7

Open
LichFaker opened this issue Apr 21, 2016 · 5 comments
Open

关于*map的一些疑问 #7

LichFaker opened this issue Apr 21, 2016 · 5 comments

Comments

@LichFaker
Copy link

LichFaker commented Apr 21, 2016

凯哥好,
如果我在map中接收udp的data包,相当于阻塞线程,此时就算调用了unsubscribe()最终也还是会执行Observer,这样会造成内存泄漏,遇到这样的情况该如何处理?

@rengwuxian
Copy link
Owner

为什么会造成内存泄露没看懂…… unsubscribe() 做的是解绑,它无法阻止你的工作线程的工作,你的工作线程依然会继续进行网络通信,但工作线程和 Observer 的连接已经断开了,应该不会泄露内存吧?

至于工作线程继续工作的问题,如果你想把它立即停止,解决方案就和你使用 RxJava 之前使用一样的就行了。

@LichFaker
Copy link
Author

但事实上并没有和Observer解绑成功,最终还是会执行订阅的方法,当再次进入的时候就造成泄漏了。
我试着在你给的例子的flatmap()方法中执行udp的receive操作,遇到了一样的问题

@rengwuxian
Copy link
Owner

我应该明白你的意思了,但没有遇到过你的情况……你找身边的人帮你看看是不是哪里有什么别的问题试试看?

On Fri, Apr 22, 2016 at 2:02 PM Shenhuan Chan [email protected]
wrote:

但事实上并没有和Observer解绑成功,最终还是会执行订阅的方法,当再次进入的时候就造成泄漏了。
我试着在你给的例子的flatmap()方法中执行udp的receive操作,遇到了一样的问题


You are receiving this because you commented.

Reply to this email directly or view it on GitHub
#7 (comment)

@LichFaker
Copy link
Author

okay, thanks anyway

@androidzhang
Copy link

大神 厉害呀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants