Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (476)
Games in Android Showcase (106)
games submitted by our members
Games in WIP (532)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Linked Lists and memory management.  (Read 2006 times)
0 Members and 1 Guest are viewing this topic.
Offline Funkapotamus

Junior Member




wo shuo han yu


« Posted 2004-09-14 13:35:14 »

In my game, I use a linked list (the concept, not the built in Java one), to add/remove entities.  I fear however, that when an entity is removed from the linked list and it's reference is set to null, that it is not completely being destroyed.  I believe that Java sometimes keeps ties to my 'deleted' nodes long after I have tried to get rid of them.

What I know:  Java sometimes gets rid of my nodes... eventually.  I know that it sometimes takes the garbage collector a while to unallocate memory.  I know that at least some nodes are eventually removed- otherwise the game would crash from memory overflow.  (Since I'd keep making new nodes without removing old ones.)

What I don't know:  In my game, I sometimes get erratic behavior when nodes are deleted which leads me to believe that sometimes they arn't deleted at all.  I have no way of testing this however, which is why I'm asking here if anyone has seen/done any testing on this.

Here's a simple example of how I'm doing this:

http://www.funkapotamus.org/linkedlist/Node.java
http://www.funkapotamus.org/linkedlist/Test.java

Oh, and if anyone knows a better method for dynamically spawning and killing entities (particles, monsters, bullets, etc.) in a high fps game, I'm open to suggestions.
Offline DannyFromTower

Senior Newbie




Java games rock!


« Reply #1 - Posted 2004-09-15 06:35:34 »

What are the symptoms that lead you to beleive your entities arent being destroyed?

Looking at your test code the link list should set entities free just fine. Do your entities keep hard references to each other at any time? In which case it may be those references from a live entity to a dead one that stop it from being garbage collected.
Online princec

JGO Kernel


Medals: 340
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #2 - Posted 2004-09-15 10:40:49 »

I just new() my entities and particles and let them get GC'ed now and everything is fine. Once in a blue moon it skips a frame or two when they get GC'ed but not so as you'd notice.

Cas Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline jherber

Junior Member




Java games rock!


« Reply #3 - Posted 2004-10-13 01:08:37 »

in removeStartNode...
...
if(node != null)
   node.setPreviousNode(null);

>>headNode.setNextNode(null)<<  this is missing
                 
headNode = node;
...

same type of mistake in removeEndNode.  you should probably add a method to class node that performs this action.

node::delete()
   next = null
   prev = null




 
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

pw (15 views)
2014-07-24 01:59:36

Riven (14 views)
2014-07-23 21:16:32

Riven (13 views)
2014-07-23 21:07:15

Riven (15 views)
2014-07-23 20:56:16

ctomni231 (43 views)
2014-07-18 06:55:21

Zero Volt (40 views)
2014-07-17 23:47:54

danieldean (32 views)
2014-07-17 23:41:23

MustardPeter (36 views)
2014-07-16 23:30:00

Cero (51 views)
2014-07-16 00:42:17

Riven (50 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!