out of memory
Kevin Rushforth
kevin.rushforth at oracle.com
Tue Nov 6 11:04:53 PST 2012
Are frames being rendered during this time? If so, then you may have
discovered a bug. If you have a test case you could file JIRA and attach it.
-- Kevin
Tom Eugelink wrote:
> Ok, this is confusing; I've confirmed using lookup that the nodes are
> removed from the scene, however I end up with a dirtyNodes collection
> with over 23000 buttons and 15000 labels.
>
> Every 10 ms 30 buttons and 20 labels are added... So it actually takes
> quite some time for this to fill up and cause the out of memory
> exception.
>
> Tom
>
>
>
> On 2012-11-06 13:56, Kevin Rushforth wrote:
>> Correct. One short-lived exception to that would be if a node was
>> modified and then removed from the scene in the same frame. In this
>> case it would exist in the dirty nodes list until the next
>> synchronization pulse.
>>
>> -- Kevin
>>
>>
>> Tom Eugelink wrote:
>>> I figured as much, so these nodes still are part of the scene. They
>>> are not "to be removed", correct?
>>>
>>> Tom
>>>
>>>
>>>
>>> On 2012-11-06 13:36, Kevin Rushforth wrote:
>>>> The dirty nodes collection is a list of nodes in a scene that have
>>>> had their state modified. It is processed and cleared as part of
>>>> the node synchronization step each pulse.
>>>>
>>>> -- Kevin
>>>>
>>>>
>>>> Tom Eugelink wrote:
>>>>> A user of MigPane reported that he ran into a out of memory
>>>>> exception.
>>>>>
>>>>> http://migcalendar.com/forums/viewtopic.php?f=8&t=3916&p=8717#p8717
>>>>>
>>>>> I've created a memory dump of this and using the memory analyser
>>>>> tool I only see that it is being held by weak references and the
>>>>> scene node.
>>>>>
>>>>> Class Name | Shallow Heap | Retained Heap
>>>>> ----------------------------------------------------------------------------------------------------------------
>>>>>
>>>>> javafx.scene.control.Button @
>>>>> 0x319ba2f8 | 408 |
>>>>> 1,672
>>>>> - [60490] javafx.scene.Node[98113] @
>>>>> 0x29cc8810 | 392,464 | 392,464
>>>>> - dirtyNodes javafx.scene.Scene @
>>>>> 0x27f65d00 | 376 | 396,728
>>>>> |- this$0 javafx.scene.Scene$ScenePeerListener @
>>>>> 0x28003d60 | 16 | 16
>>>>> | - sceneListener com.sun.javafx.tk.quantum.ViewScene @
>>>>> 0x27ffb710 | 64 | 168
>>>>> | |- scene com.sun.javafx.tk.quantum.PrismPen @
>>>>> 0x27ffc7f0 | 48 | 2,344
>>>>> | | - pen com.sun.glass.ui.win.WinView @ 0x27ff4e98
>>>>> Native Stack | 72 | 480
>>>>> | |- scene
>>>>> com.sun.javafx.tk.quantum.GlassViewEventHandler @
>>>>> 0x27ffc820| 48 | 408
>>>>> | |- scene com.sun.javafx.tk.quantum.WindowStage @
>>>>> 0x27f694e8 | 88 | 184
>>>>> | - Total: 3 entries | |
>>>>> |- this$0 javafx.scene.Scene$ScenePulseListener @
>>>>> 0x27f6a300 | 16 | 16
>>>>> |- oldScene, value javafx.scene.Node$4 @
>>>>> 0x31121ca8 | 48 | 48
>>>>> - Total: 3 entries | |
>>>>> ----------------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>> What is this dirtyNodes collection and when are nodes placed in it?
>>>>>
>>>>> Tom
>>>>>
>>>
>
More information about the openjfx-dev
mailing list