Remove my objects from Memory

I have a class "Ball" which display graphical circle ball in random x&y axis and I  fade out it with Event.ENTER_FRAME and specify removeEventListener if it reach alpha<=0 .
Now I made multiple object from "Ball" class. Now, In my stage it works nice but when I see my Computer Memory status. my current flash.exe is increasing memory rapidly. Is how to remove my unusual object from my Memory. So that it would not get hang. At last thanks for taking interest on my problem

Here is a usefull article about garbage collection in flash. I came across it few weeks back ,I would like to share it :
http://www.adobe.com/devnet/flashplayer/articles/garbage_collection.html

Similar Messages

  • How to remove the Object from memory.

    Hello.
    Flash file that i made with Flex Builder uses memory too
    much.
    Look at the next example source code.
    var testCan:Canvas = new Canvas();
    this.addChild(testCan);
    this.removeChild(testCan);
    testCan = null;
    but just memory usage still goes up, is not freed instantly.
    so if i load the large flash files on my web browser,
    after 5 munites or something, the web browser is down.
    How to remove the object from memory immediately without
    delay?

    It's all about the Garbage Collector ..
    There is a nice write up here :
    http://www.gskinner.com/blog/archives/2006/06/as3_resource_ma.html

  • ArrayList problem ....i can remove my object from my arrayList

    hi all, i am going to remove a object from my array by using arrayList.However, it can`t work properly and did nth for me..i don`t know why...could anyone give me some suggestion and show me what i did wrong on my code ....i stated more detail next to my code...plesae help...
    public class MusicCd
         private String musicCdsTitle;
            private int yearOfRelease;
         public MusicCd()
              musicCdsTitle = "";
              yearOfRelease = 1900;
         public MusicCd(String newMusicCdsTitle)
              musicCdsTitle = newMusicCdsTitle;
              //yearOfRelease = newYearOfRelease;
         public MusicCd(String newMusicCdsTitle, int newYearOfRelease)
              musicCdsTitle = newMusicCdsTitle;
              yearOfRelease = newYearOfRelease;
         public String getTitle()
              return musicCdsTitle;
         public int getYearOfRelease()
              return yearOfRelease;
         public void setTitle(String newMusicCdsTitle)
              musicCdsTitle = newMusicCdsTitle;
         public void setYearOfRelease(int newYearOfRelease)
              yearOfRelease = newYearOfRelease;
         public boolean equalsName(MusicCd otherCd)
              if(otherCd == null)
                   return false;
              else
                   return (musicCdsTitle.equals(otherCd.musicCdsTitle));
         public String toString()
              return("Music Cd`s Title: " + musicCdsTitle + "\t"
                     + "Year of release: " + yearOfRelease + "\t");
    import java.util.ArrayList;
    import java.io.*;
    public class MusicCdStore
       ArrayList<MusicCd> MusicCdList;
       public void insertCd()
            MusicCdList = new ArrayList<MusicCd>( ); 
            readOperation theRo = new readOperation();
            MusicCd theCd;
            int muiseCdsYearOfRelease;
            String muiseCdsTitle;
              while(true)
                    String continueInsertCd = "Y";
                   do
                        muiseCdsTitle = theRo.readString("Please enter your CD`s title : ");
                        muiseCdsYearOfRelease = theRo.readInt("Please enter your CD`s year of release : ");
                        MusicCdList.add(new MusicCd(muiseCdsTitle, muiseCdsYearOfRelease));
                        MusicCdList.trimToSize();
                        continueInsertCd = theRo.readString("Do you have another Cd ? (Y/N) : ");
                   }while(continueInsertCd.equals("Y") || continueInsertCd.equals("y") );
                   if(continueInsertCd.equals("N") || continueInsertCd.equals("n"));
                                                    //MusicCdList.add(new MusicCd(muiseCdsTitle, muiseCdsYearOfRelease));                              
                                  break;
                      //System.out.println("You `ve an invalid input " + continueInsertCd + " Please enter (Y/N) only!!");
       public void displayAllCd()
                    System.out.println("\nOur CD collection is: \n" );
              System.out.println(toString());
       public String toString( )
            String result= " ";
            for( MusicCd tempCd : MusicCdList)
                 result += tempCd.toString() + "\n";
            return result;
       public void searchingMusicCd()
            readOperation theRo = new readOperation();
            String keyword = theRo.readString("Enter a CD `s Title you are going to search : ") ;
            ArrayList<MusicCd> results = searchForTitle(keyword );
              System.out.println("The search results for " + keyword + " are:" );
              for(MusicCd tempCd : results)
                   System.out.println( tempCd.toString() );
       //encapsulate the A
       public void removeCd()
            readOperation theRo = new readOperation();
            String keyword = theRo.readString("Please enter CD `s title you are going to remove : ") ;
            ArrayList<MusicCd> removeMusicCdResult = new ArrayList<MusicCd>();
                  System.out.println("The CD that you just removed  is " + keyword );
              for(MusicCd tempCd : removeMusicCdResult)
                   System.out.println( tempCd.toString() );
       //problem occurs here : i am so confused of how to remove the exactly stuff from my arrayList
       //pls help
       private ArrayList<MusicCd> removeCdForTitle(String removeCdsTitle)
             MusicCd tempMusicCd = new MusicCd();
             tempMusicCd.setTitle(removeCdsTitle);
            // tempMusicCd.setTitle(removeCdsTitle);
            //tempMusicCd.getTitle() = removeCdsTitle;
            ArrayList<MusicCd> removeMusicCdResult = new ArrayList<MusicCd>();
            for(MusicCd currentMusicCd : MusicCdList)
                 if((currentMusicCd.getTitle()).equals(tempMusicCd.getTitle()))
                     // removeMusicCdResult.remove(currentMusicCd);
                         MusicCdList.remove(currentMusicCd);
            removeMusicCdResult.trimToSize();
            return removeMusicCdResult;
       private ArrayList<MusicCd> searchForTitle(String searchString)
            ArrayList<MusicCd> searchResult = new ArrayList<MusicCd>();
            for(MusicCd currentMusicCd : MusicCdList)
                 if((currentMusicCd.getTitle()).indexOf(searchString) != -1)
                      searchResult.add(currentMusicCd);
            searchResult.trimToSize();
            return searchResult;
    import java.util.*;
    public class MusicCdStoreEngine{
         public static void main(String[] args)
              MusicCdStore mcs = new MusicCdStore( );
              mcs.insertCd();
              //display the Cd that you just insert
              mcs.displayAllCd();
              mcs.removeCd();
              mcs.displayAllCd();
              mcs.searchingMusicCd();
    //Acutally result
    //Please enter your CD`s title : ivan
    //Please enter your CD`s year of release : 1992
    //Do you have another Cd ? (Y/N) : y
    //Please enter your CD`s title : hero
    //Please enter your CD`s year of release : 1992
    //Do you have another Cd ? (Y/N) : n
    //Our CD collection is:
    // Music Cd`s Title: ivan     Year of release: 1992
    //Music Cd`s Title: hero     Year of release: 1992     
    //Please enter CD `s title you are going to remove : hero
    //The CD that you just removed  is hero
    //Our CD collection is:
    // Music Cd`s Title: ivan     Year of release: 1992
    //Music Cd`s Title: hero     Year of release: 1992     
    //Enter a CD `s Title you are going to search : hero
    //The search results for hero are:
    //Music Cd`s Title: hero     Year of release: 1992
    //>Exit code: 0
    //Expected result
    //Please enter your CD`s title : ivan
    //Please enter your CD`s year of release : 1992
    //Do you have another Cd ? (Y/N) : y
    //Please enter your CD`s title : hero
    //Please enter your CD`s year of release : 1992
    //Do you have another Cd ? (Y/N) : n
    //Our CD collection is:
    // Music Cd`s Title: ivan     Year of release: 1992
    //Music Cd`s Title: hero     Year of release: 1992     
    //Please enter CD `s title you are going to remove : hero
    //The CD that you just removed  is hero
    //Our CD collection is:
    // Music Cd`s Title: ivan     Year of release: 1992
    //Music Cd`s Title: hero     Year of release: 1992<<-- it is not supposed to display cos i have deleted it from from array     
    //Enter a CD `s Title you are going to search : hero
    //The search results for hero are:
    //Music Cd`s Title: hero     Year of release: 1992<<-- i should have get this reuslt...cos it is already delete from my array
    //>Exit code: 0
    import java.util.*;
    public class readOperation{
         public String readString(String userInstruction)
              String aString = null;
              try
                         Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   aString = scan.nextLine();
              catch (NoSuchElementException e)
                   //if no line was found
                   System.out.println("\nNoSuchElementException error occurred (no line was found) " + e);
              catch (IllegalStateException e)
                   // if this scanner is closed
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aString;
         public char readTheFirstChar(String userInstruction)
              char aChar = ' ';
              String strSelection = null;
              try
                   //char charSelection;
                         Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   strSelection = scan.next();
                   aChar =  strSelection.charAt(0);
              catch (NoSuchElementException e)
                   //if no line was found
                   System.out.println("\nNoSuchElementException error occurred (no line was found) " + e);
              catch (IllegalStateException e)
                   // if this scanner is closed
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aChar;
         public int readInt(String userInstruction) {
              int aInt = 0;
              try {
                   Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   aInt = scan.nextInt();
              } catch (InputMismatchException e) {
                   System.out.println("\nInputMismatchException error occurred (the next token does not match the Integer regular expression, or is out of range) " + e);
              } catch (NoSuchElementException e) {
                   System.out.println("\nNoSuchElementException error occurred (input is exhausted)" + e);
              } catch (IllegalStateException e) {
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aInt;
    }

    //problem occurs hereI'm not sure that the problem does occur within the
    removeCdForTitle() method.
    Your main() method calls removeCd() which obtains the title of
    the CD to be removed (keyword). But remoceCd() never
    calls removeCdForTitle(), so nothing is ever removed.

  • How to remove an object from session with JSF 2.0 + Faceletes

    hi all,
    I have a facelets page which calls a backing bean of session scope. Now when ever i click on this page i want the existing bean object to be removed from the session . In my existing jsp i have a logic something like this to remove the object from session
         <% if (request.getParameter("newid") != null) {
              request.getSession().removeAttribute("manageuserscontroller");
    %>
    Now i have to refactor my jsp to use facelets and i should not be using scriplets anymore . I did try with JSTL but the <c:remove> tag is not supported by facelets.
    Can someone help me how can i refactor this code to work for my facelets?
    I really appreciate your help in advance
    Thank you

    r035198x wrote:
    Redesign things so that the remove is done in a backing bean method rather than in a view page.Exactly that. I tend to cleanup session variables at the start and at the end of a page flow; generally the end is some sort of save or cancel action being invoked through a button but that is application specific.

  • How to remove unused objects from the webcatalog In OBIEE11g

    Hi,
    I want to delete unused objects from obiee11g catalog, i know in obiee10g it's working fine (i.e: we can do it via manage catalog then delete the unused objects) is there any way to do it automatically like RPD utility --->removing unused objects from Physical layer in RPD
    fyi: I don't want to delete manualy. i need somethink like button/link to find unused objects(report,filter,folder..etc) from my obiee11g catalog.
    Thanks
    Deva
    Edited by: Devarasu on Nov 29, 2011 12:06 PM
    Edited by: Devarasu on Nov 29, 2011 3:15 PM

    Hi,
    Checked with Oracle Support team and confirmed below points
    --> incorporated into the Current product and consider as BUG it may resolve future release
    --> Currently there isnt any automatic method to remove the unused objects like reports, filters,folder etc from catalog.
    Treated as Bug
    Bug 13440888 - AUTOMATICALLY REMOVE OF UNUSED CATALOG OBJECTS FROM WEBCATALOG
    FYI:
    SR 3-4984291131: How to remove unused objects from the webcatalog in obiee11g
    Thanks
    Deva

  • How do I remove an object from the foreground of a photo eg a fence?

    How do I remove an object from the foreground of a photo eg a fence?

    What version of Photoshop?
    If CC then try here
    Learn Photoshop CC | Adobe TV

  • How do you remove an object from a picture.  Newbie to program CS6

    how do you remove an object from a picture.  Newbie to program CS6

    Well, generally you can use the clone-stamp tool for one, shortcut is S. It basically allows you to take data from any part of the image and copy that over. What I do is draw on a new layer above the one to modify- make sure you select Sample:"This layer and below" in the top toolbar when doing so. Other ways include blending something on top of the object too, using different blending modes. Painting over it works too at times (rarely). It'd be easier if we knew a specific case though...

  • Remove AP object from WLC

    How to remove AP object from WLC 8500 ?  I had dismantle one AP so it is now no longer associated with WLC, I want to remove AP info from WLC. But unable to find any command for the same.

    Hi Scott,
    Thanks for your answer..  But it's not fulfill my question.  I want to remove some of AP entries which is not currently associated with WLC.
    Below are steps which I understood when new AP joins to controller in my case.
    1) We are configuring AP with static IP and capwap protocol thru console login of AP.
    2) We are connecting AP to WLC thru netwok.
    3) When A joins to controller, It will be visible at Monitor section > Access Point Summary
    4) It will start from AP.macaddress
    5) Now remotely we are applying AP name, HIgh availability and assign to appropriate AP group.
    Now My query is when AP joins to controller, somewhere there should be entry in database that this mac address of AP is joined to controller along with AP configuration. 
    I want to delete some of AP databases which are disassociates from controller due to media failure between AP and WLC/AP no longer available.
    Is there any command to remove AP entries from Controller ? or any other procedure ?
    Devang

  • How to remove an object from Buffer Cache

    Hi,
    I have a simple question. How can I remove an object from the Buffer Cache in Oracle 10gR2 ?
    I am doing some tuning tasks in a shared development database, so I can't do "alter system flush shared_pool" because it will affect other people who are running their queries. So I want to remove from Buffer Cache only the objects that I know that I am the only reader. I can see the objects that I want to be removed by querying the V$BH view.
    By the way, I did some "alter system flush shared_pool" and my objects were not removed from the Buffer Cache, and they are not in the "Keep".
    Thanks In Advance,
    Christiano

    Further more, you can use CACHE | NOCACHE on table level to indicate how you want Oracle handle the data blocks of said table.
    http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_7002.htm#i2215507
    CACHE | NOCACHE | CACHE READS
    Use the CACHE clauses to indicate how Oracle Database should store blocks in the buffer cache. If you specify neither CACHE nor NOCACHE, then:
    In a CREATE TABLE statement, NOCACHE is the default
    In an ALTER TABLE statement, the existing value is not changed.
    CACHE For data that is accessed frequently, this clause indicates that the blocks retrieved for this table are placed at the most recently used end of the least recently used (LRU) list in the buffer cache when a full table scan is performed. This attribute is useful for small lookup tables.
    As a parameter in the LOB_storage_clause, CACHE specifies that the database places LOB data values in the buffer cache for faster access.
    Restriction on CACHE You cannot specify CACHE for an index-organized table. However, index-organized tables implicitly provide CACHE behavior.
    NOCACHE For data that is not accessed frequently, this clause indicates that the blocks retrieved for this table are placed at the least recently used end of the LRU list in the buffer cache when a full table scan is performed. NOCACHE is the default for LOB storage.
    As a parameter in the LOB_storage_clause, NOCACHE specifies that the LOB value either is not brought into the buffer cache or is brought into the buffer cache and placed at the least recently used end of the LRU list. The latter is the default behavior.
    Restriction on NOCACHE You cannot specify NOCACHE for an index-organized table.
    CACHE READS CACHE READS applies only to LOB storage. It specifies that LOB values are brought into the buffer cache only during read operations but not during write operations.

  • I am trying to remove an object from a photo such as the back of a person's head.  How do I do this?  I have iphoto '09.

    I am new to iphoto and am trying to figure out how to remove an object from a photo (ie the back of a person's head, or an arm in a photo that seems to belong to no one).  I have iphoto '09.

    You need an external editor for that kind of work.
    In order of price here are some suggestions:
    Seashore (free)
    Graphic Coverter ($45 approx)
    Acorn ($50 approx)
    Photoshop Elements ($75 approx)
    There are many, many other options. Search on MacUpdate.
    You can set Photoshop (or any image editor) as an external editor in iPhoto. (Preferences -> General -> Edit Photo: Choose from the Drop Down Menu.) This way, when you double click a pic to edit in iPhoto it will open automatically in Photoshop or your Image Editor, and when you save it it's sent back to iPhoto automatically. This is the only way that edits made in another application will be displayed in iPhoto. 
    Regards
    TD

  • Using ps trying to remove an object from a picture, following steps but when object is removed area is replaced by another portion of the photo like someones face as opposed to what should normally be in the background

    using PS on a regular computer windows 7 tryng to remove an object from a picture,  following steps in the tutorial however when the object is removed it is replaced by another (unwanted) portion of the photo i.e. someones face  instead of what would have normally been in the background

    Well, we can't know. You have not told us what tools you use and what steps nor provided any screenshots. From your description it simply sounds like you are following some tutorial (which again we know nothing about because you haven't told us which one) and getting things wrong. You need to do much better if you want people to help you.
    Mylenium

  • How to garbage collect an newed as3 Sound Object from memory?

    For example, using next text code:
    package
              import flash.display.*;
              import flash.events.*;
              import flash.media.*;
              import flash.system.*;
              import flash.system.*;
              public class Main extends Sprite
                        [Embed(source = "../data/SongScene8.mp3")] protected var SongScene8:Class;
                        public function Main():void
                                  if (stage) init();
                                  else addEventListener(Event.ADDED_TO_STAGE, init);
                        private function init(e:Event = null):void
                                  removeEventListener(Event.ADDED_TO_STAGE, init);
                                  System.gc();
                                  trace("Before");
                                  trace(System.totalMemory);
                                  trace("_________________")
                                  var sound:Sound = new SongScene8();
                                  System.gc();
                                  trace("After new");
                                  trace(System.totalMemory);
                                  trace("_________________")
                                  sound = null;
                                  System.gc();
                                  trace("After null");
                                  trace(System.totalMemory);
    The output is:
    Before
    3461120
    After new
    3604480
    After null
    3604480
    * Even if the gc runs a thousand times after, the last, increased value remains.
    * I've tested this too by importing an mp3 from an .swc, rather than from a file. The result is similar.
    * Tracing System.privateMemory rather than System.totalMemory gives similar (although offset) results.
    Wether or not a soundchannel is played on it, it looks like the Sound Object
    cannot be removed from memory.
    Please say I'm wrong and tell me why.
    Thanks in advance

    works for me in cs5.5:
    Loop 1
    Before
    28780
    sound created
    28796
    After null 0
    29380
    After null 1
    29196
    After null 2
    29192
    After null 3
    29192
    Loop 2
    Before
    29192
    sound created
    29208
    After null 0
    29196
    After null 1
    29196
    After null 2
    29196
    After null 3
    29196
    Loop 3
    Before
    29196
    sound created
    29208
    After null 0
    29196
    After null 1
    29196
    After null 2
    29196
    After null 3
    29192
    Loop 4
    Before
    29192
    sound created
    29204
    After null 0
    29192
    After null 1
    29192
    After null 2
    29192
    After null 3
    29192
    Loop 5
    Before
    29192
    sound created
    29204
    After null 0
    29192
    After null 1
    29192
    After null 2
    29192
    After null 3
    29192
    Loop 6
    Before
    29192
    sound created
    29204
    After null 0
    29192
    After null 1
    29192
    After null 2
    29192
    After null 3
    29192
    Loop 7
    Before
    29196
    sound created
    29208
    After null 0
    29196
    After null 1
    29196
    After null 2
    29196
    After null 3
    29196
    use a frame loop to repeatedly execute the following and verify no memory leak:
    var loops:int;
    loops++;
    if(loops>6){
        stop();
    } else if(loops==1) {
        var s:String = "";
    s+="Loop "+loops+"\n";
    s+="Before\n";
    s+=System.totalMemory/1024+"\n";
    var sound:Sound = new SongScene8();
    s+="sound created\n";
    s+=System.totalMemory/1024+"\n";
    var n:int;
    clearF();
    function clearF():void {
        n=0;
        sound=null;
        this.addEventListener(Event.ENTER_FRAME,f);
    function f(e:Event):void {
        System.gc();
        s+="After null "+n+"\n";
        s+=System.totalMemory/1024+"\n";
        n++;
        if (n>3) {
            this.removeEventListener(Event.ENTER_FRAME,f);
            s+="_________________\n";
            if(loops>6){
                trace(s);

  • Add/Remove data object from dataset

    Hello,
    I was working out a way to add and remove data from a dataset
    on the fly and could not figure out any built in methods to do
    this.
    As I have decided to include spry in my project I like to try
    and utilise as much as of its code as possible since it is
    complicated to explain I have created a simple example – a
    colour picker! (thought it might be more interesting…) of
    what I am trying to achieve at
    http://www.freshfresh.co.uk/spry/
    - if you have a go on this and maybe look at the source code (all
    the JS is embedded in HTML there are no modifications to other the
    other core files). I have only used spry effects etc, including the
    ‘accordion’ – which I have become quite attached
    to, it is really good for condensing pages down.
    You will see I am using the setDataFromDoc method to create
    the dataset – I tried the .data = myArrayOfData; .dataHash =
    hashTable; method i.e. creating from an object rather than array
    but it did’nt seem to play ball with the
    addDataChangedObserver method – it did’nt update itself
    each time it was modified (I am sorry I cannot remember exactly
    what I did – but I tried all kinds of ways…). I stuck
    with the string method because it worked - each time my new dataset
    changed it updated itself on the screen (you will have to have a
    look to understand.....sorry!!), but I would be interested to know
    how such a thing could be implemented using the object route if you
    believe this would be more efficient.
    My second question is more simple – is there a shorter
    way to add and remove a data object from a dataset? – as you
    can see from the source code I have effectively created an
    ‘interface’ to do these tasks…. I could’nt
    work out whether these methods are already built in. Maybe they
    are?
    Third question is… to extract a data object from a
    dataset I use the .dataHash[the_row_id] method – is this the
    right thing to do or could it lead to complications… that is
    using methods that might supposedly be private?
    Fourth question (observation really) – whilst creating
    that colour picker example I went over board with my datasets and
    loaded in several palettes some of which had over 1000 elements or
    data objects. Which inevitably was very slow (on my computer
    anyway) – but it got me thinking about trimming the contents
    of my spry regions for better performance. I am I right in thinking
    that the less HTML etc that there is in a spry region the quicker
    SPRY will process it. For example say you had spry repeat with an
    image tag in with some onclick, onmousover, onmouseout, style
    attributes etc and compare this to a spry repeat with a simple
    image with minimal attributes set. I suppose what I am trying to
    say is – does spry ‘store’ all the contents of
    each spry region somewhere? Or does it just process it and leave it
    to the browser dom?
    Fifth observation.... I find it really difficult to explain
    computer technicalities in writing. It must be tough reading these
    posts.... I know I find it difficult sometimes when dealing with
    written end user feedback!
    Andrew

    Just clarifying my questions a bit further....
    I found some old code regarding question 1 by using the
    object method I mean something like this...
    var mySwatches = [{'@hex':'ff0000'},{'@hex':'00ff00'}];
    var hashTable = [];
    function createDs(){
    for (var i = 0; i < mySwatches.length; i++)
    mySwatches
    .ds_RowID = i;
    hashTable = mySwatches
    dsMySwatches.data = mySwatches;
    dsMySwatches.dataHash = hashTable;
    dsMySwatches.loadData();
    i.e. not writing out a whole XML string string as the online
    example does. When using this way I did'nt seem to be able to get
    the HTML to refresh. I tried using [
    Spry.Data.updateRegion('mydata'); ] after recreating the dataset I
    also tried adding an [ .addDataChangedObserver ] (like in the
    string example) amongst numerous other ways but it just would not
    work like the string way. - Maybe I did something wrong somewhere.
    In question 3 I refer to the [ .hash ] method .... its not a
    'method' its a 'property' - my question should read - is it ok to
    access private properties (from a browser campatiblity/security
    point of view) that do not have specific methods to gain access to
    them. I suppose it does'nt really matter with JS...
    In question 4 I mention minimising the amount of code in a
    spry region to speed it up. A clearer example of this might be for
    example - a gallery with lots of images. As we know there will be a
    slight delay as SPRY writes all the html so to speed up that intial
    write I strip out all the image attributes such as onlclick do
    this, onmouse over do that... and add these after the images have
    loaded using a seperate function similar to my
    fillSwatches(ds,prefix) function in my online colorpicker example.
    I suppose it like a 2 tier processing of all the data. SPRY does
    the intial display writing to get everything in place and then
    another pass is made over to add any further functionality
    adjustments etc. I am still not sure if that makes any sense!
    ***edit
    Also on the subject of speed and the application as a whole
    i.e. including my PHP - In one example I was creating I ended up
    with an XML structure where each node has over 14 attributes i.e.
    <somenode att1=”x” ……..
    att14=”z”/> - as the file grew it obviously took
    longer to process particularly on the server side, i.e. added all
    those attributes just slowed it all down. So I did
    this…… <somenode att1=”x:y:z” /> i.e
    condensed selected attributes into a string that I could explode
    later on.
    Obviously this limits SPRYS ability to access the attributes
    using the {attr} syntax. I had to create a function to explode the
    array and do the ‘necessary’ on a second pass over the
    data – this works ok for me. But its interesting that in this
    particular case the server could not refresh the XML in an
    acceptable time without doing this – just thought that might
    be interesting to you. I suppose technically what I am doing is
    abusing the concept of an XML structure and simply using it as a
    ‘carrier’ to feed my application …. Which I
    suppose is where JSON comes in…. which is a bit more compact
    and maybe faster to manipulate on both the server and client side
    – I don’t really know, I have never used it –
    just throwing ideas around!!
    Andrew

  • How do you remove STATEFUL components from memory in EAServer?

    This is from one of the books on Powerbuilder/EAServer:
    "So the major difference between stateless and stateful components is that stateless components
    automatically invoke the component deactivate event when a method call ends and the component
    is logically removed from memory. A stateful component remains in memory until physically re-
    moved by the caller."
    What does the caller (client Powerbuilder program) do to physically remove a stateful component from EAServer?
    Thanks,
    Mark

    Hi Mark
    Not sure...
    Do you know the component is in memory because memory hasn't been released?
    In which case you could check that the destroy event happens and use it to explicitly clean up.  This should really be in the deactivate event in case you do start pooling.
    From memory, (pardon the pun) there were memory leaks in EAServer version 10 years ago. A very small part of a component could take up lost space, eventually leaving only smaller and smaller chunks free, ultimately causing decline in performance and failure.
    Do you know the component is in memory because Jag Manager tells you after you have refreshed to folder?
    Lars

  • How to remove an object from a diagram

    Hello,
    Is there are way to remove (cut) an entity from a diagram (sub-view) in Data Modeler? I can only find a delete function which will delete it from the model altogether. I'd like to just remove the entity from the diagram and leave it in the model (and any other sub-views it may be in).
    Thanks in advance,
    Beatriz.

    In my case, if an entity is shown in more than one views, a dialog box is displayed to ask if I want to completely delete the entity (from all views) or just hide it from current view.
    You probably don't have your entity in multiple views. :-)

Maybe you are looking for