2017-02-25 44 views
2

我正在使用Codename One实施智能手机应用程序。我是否需要关闭Codename One中的屏幕(以防止内存泄漏)?

我注意到,为了显示一个屏幕,我实现了一个窗体并调用Form.show()

随着我在屏幕上的进展,我意识到没有dismiss()unshow()方法。所以,我想知道以前的屏幕是否从内存中释放出来,而且我很想知道如何管理内存。

编辑:

或者我可以使用Display.getInstance().callSerially()方法?

回答

2

当用户导航到新表单时,会立即创建并释放旧表单并进行垃圾回收。如果用户返回到该表单,则会再次重新创建。你不应该从留在记忆中的形式的残余物中产生记忆问题。 CN1试图通过这种方法尽量减少内存使用量。

+0

正确,除非您将指向该窗体或其中的组件的指针保留为类中的变量。这种情况下,该表单将由于与Codename One无关的标准Java垃圾回收行为而泄漏 –