www.webdeveloper.com
Results 1 to 2 of 2

Thread: Problematic Loop and Memory Utilization

Hybrid View

  1. #1
    Join Date
    Jan 2006
    Location
    Gloucester, MA
    Posts
    148

    Problematic Loop and Memory Utilization

    I have a feeling I am implementing this wrong and because of that I am consuming larger amounts of memory each call to this method... I call this every 5 seconds and overtime the memory utilization goes up and up and up. Can someone review this and point out how I've implemented this wrong? I'm a relative newbie to javascript so don't be too hard on me


    Code:
    get : function() {
    		
    		if (cip.simulation_mode == 'random')
    		{ 
    			cip.randomnumber2 = Math.floor(Math.random()* 0999999999999999);			
    			cip.url = '_xml/cipfe/simulation.php?rand=' + cip.randomnumber2;
    			$('simgrouping').update('Randomized');			
    		}
    		else if (cip.simulation_mode == 'grouped')
    		{ 
    			cip.randomnumber2 = Math.floor(Math.random()* 0999999999999999);			
    			cip.grouping = general.random(0,11);
    			cip.url = '_xml/cipfe/simulation.php?rand=' + cip.randomnumber2 + '&group=' + grouping;
    			$('simgrouping').update('Grouped - ' + grouping);			
    		}		
    		
    		if (cip.skip_next_pull == 'false')
    		{
    			new Ajax.Request(cip.url,{method: 'post', asynchronous: true, evalScripts: false, 
    			onCreate: function(u) { cip.xmitstart = new Date().getTime();},
    			onComplete: cip.process,
    			onSuccess: function(u) 
    			{ 
    				document['communication'].src = '_images_icons/' + layout.icon_path + '/monitor_xmit_anim.gif'; 
    				var xmittime = new Date().getTime() - cip.xmitstart - cip.xmitoffset;
    				$('lastcipxmlxfer').update(cip.xmittime + 'ms.');
    				if (xmittime > cip.interval)
    				{
    					var overrun = cip.xmittime - cip.interval
    					windowz.create('popup','yes','Race Condition','Race condition with an overrun of <font color="red">' + (overrun/1000) + ' seconds</font>.  Network latencey or server load may be the cause.  CIPfe automatically changed the update interval from ' + (cip.interval/1000) + ' second(s) to ' + ((cip.interval + 1000)/1000) + ' second(s).');	
    					cip.change(cip.interval + 1000);
    					// send error to server network error table for tracking.
    				} 
    				// grouping (I removed this, not sure why it was sitting there.
    				debugstring = '<font color="magenta">grouping</font>: ' + cip.grouping + ' <font color="magenta">interval</font>: ' + cip.interval;			
    				debug.write('<b>cip</b>.<font color="blue">get( )</font>',cip.xmittime,debugstring);
    			 
    			},	
    			onFailure: function(u) { document['communication'].src = '_images_icons/' + layout.icon_path + '/monitor_fail.png'; },
    			on404: function(u) { document['communication'].src = '_images_icons/' + layout.icon_path + '/monitor_fail.png'; }
    			});		
    		}
    		
    		cip.skip_next_pull = 'false'; // set skip pull back to false.
    		
    	},

  2. #2
    Join Date
    Jan 2006
    Location
    Gloucester, MA
    Posts
    148
    Just a bump... anyone?

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles