Over 3

inzameling van afval, te weten de inzameling van afval in 3, 2,,,,,,,,,,, 8 aandelen,,,,,,, het netwerk van delen van maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen. En, heb je een flash - toepassing en merkt op dat de lag?Weet nog steeds niet waarom zo Cool flash spelen in je computer loopt langzaam?Als u meer wilt weten... Over een mogelijke oorzaak van is, dan is dit artikel is voor jou. En, we vonden deze verschrikkelijke plek flashgamelicense.com de auteurs danken, de aankoop en verkoop van Flash Game.,,,,, overgenomen, training, elke paar weken hebben we opnieuw een aantal van onze lezers favoriete uit de geschiedenis van het hele gebied.Deze handleiding is gepubliceerd in juni 2010, de definitieve resultaten van de preview.,, laten we eens kijken naar de resultaten van de laatste, en wij zijn vastbesloten:,, stap 1: door de invoering van een snelle werking, als we in de echte betreft, moet je eerst weten hoe een punt over de concretisering en 3 genoemde werken.Als je het al gelezen, ik stel voor dat je naar de volgende stap.Dus, alle kennis die in je hoofd, je zit niet in de problemen, het lezen van een snelle hint.En het creëren van en het voorbeeld van de verwijzing naar de verschillende in hou is dan de meeste mensen denken dat.Geconcretiseerd (of "tot"). Alleen wanneer de code vereist de oprichting van een object.Meestal is het door de "nieuwe" trefwoorden te gebeuren, maar als je een tekst van de parameters van de grammaticale of functie, wanneer het zal gebeuren, bijvoorbeeld.Voorbeelden hiervan zijn de volgende: ///////geconcretiseerd door de "nieuwe" het sleutelwoord, nieuwe voorwerp (); de nieuwe installatie (); de nieuwe int (); de nieuwe string (); de nieuwe booleaanse (); de nieuwe tekst; ///////() geconcretiseerd door de grammatica {}; [5], "Hallo."///////geconcretiseerd door de functie van parameters echt privé functie tutexample (1:int, parameter2: booleaanse): ongeldig, na de oprichting van een voorwerp, die onafhankelijk blijven, totdat het een verwijzing.Om dit te bereiken is het creëren van een variabele, je zal de waarde van het voorwerp van de overdracht aan de variabelen, die het wist dat het die momenteel in het bezit van een object.Maar dit is wat de meeste mensen niet weten, deel), als je de waarden van de variabelen van de overdracht aan een andere variabelen, als je niet het creëren van een nieuw doel.Je creëert een link naar het voorwerp van deze twee variabelen worden gehouden, nu!Kijk naar het volgende beeld, beeld, dat verduidelijkt: 1, 2, variabelen, variabelen, kan worden gehandhaafd (dat wil zeggen dat zij een glimlach kan van hetzelfde type).Aan de linkerkant, alleen de variabele 1, bestaan.Als we echter de oprichting en installatie van de variabelen 2, dezelfde waarde, variabelen, 1, we creëren geen link tussen variabelen, 1, 2, variabelen (foto 's, bovenste deel), in plaats van ons de gezichten van de twee variabelen creëren, het verband tussen (beeld in de rechter), heeft de kennis, kunnen we naar de vuilnisman.,, stap 2: elke stad heeft een vuilnisman, en het is duidelijk dat elke aanvraag moet een bepaalde hoeveelheid geheugen te lopen, want het moet de variabelen voor het behoud van de waarde en het gebruik van.Niet duidelijk is, hoe de aanvragen voor het beheer van de voorwerpen niet nodig.Het herstel?Ze verwijderen?In de aanvraag voor het afsluiten van het voorwerp of de opslag in het geheugen?Alle drie de optie zou kunnen gebeuren, maar wij zullen hier de tweede en derde, stel je voor dat een aanvraag om een veel doel, het is gestart, maar zodra deze aan het einde van een periode van meer dan de helft van de doelstellingen nog niet gebruikt.Als ze nog in het geheugen, wat gebeurt er?Ze zullen in dit proces veel ruimte, waardoor de mensen noemen, lag, dit is duidelijk een langzame daling van toepassing.De meeste gebruikers vindt dit niet leuk, dus dat moeten we voorkomen.Hoe kunnen we ervoor zorgen dat de toepassing van de procedures efficiënter?Het antwoord is, de vuilnisman, de vuilnisman is het geheugen van een vorm van.Het is gericht op het wegnemen van de niet gebruikte voorwerpen in het systeem, en in het geheugen van de ruimte.Deze aanvraag kan de minimale geheugen gebruiken.Laten we kijken hoe het werkt als je: toepassing van de operationele procedures, het verzoek om in het systeem een geheugen van het systeem, van toepassing.De toepassing van een begin, en met de informatie die je nodig hebt om je deze herinnering, die elk voorwerp in het.Echter, als het bedrag van het geheugen gebruikt bij de oorspronkelijke eisen, de vuilnisman die niet voor de herinnering, op zoek naar iets.Soms kan leiden tot de toepassing van de vertraging als gevolg van de enorme kosten van voorwerpen, zoeken in beeld, zoals je kan zien, de piek in herinnering, (in de groene ring).De piek van de plotselinge daling van de vuilnisman gedrag veroorzaakt, wanneer de toepassing van de vereiste geheugen te gebruiken (de rode draad) en de verwijdering van alle niet noodzakelijke voorwerpen, stap 3:., start de SWF 's, nu we weten dat de vuilnisman voor ons kunnen doen, het is tijd om te leren hoe De code voor het verkrijgen van het alle voordelen.Ten eerste, we moeten weten hoe het werk van de vuilnisman was, in het oog.In code, voorwerpen worden opgenomen in de inzameling van afval, worden ze niet.Wanneer een voorwerp kan worden van de toegang tot, de code van het begrip, niet kunnen worden gebruikt, dus het moet worden verzameld, de toegankelijkheid van de script - 3, van inzameling en wortels.Wanneer een object kan niet door middel van een wortel toegang tot inzameling van afval, het in aanmerking komen voor het verzamelen van.Hier zie je een grote verzameling root directory:,, pakket - en statistische variabelen, en de lokale variabelen en variabelen in een voor de uitvoering of de functie in het kader van de variabelen, zoals de toepassing van de belangrijkste categorieën van voorbeelden of van de lijst.Ik zal met de 3 - project en FlashDevelop opgesteld, maar ik neem aan dat je kunt doen wat je wilt met IDE, omdat we niet willen dat de dingen alleen in specifieke FlashDevelop bestaan.Ik gebruik een druk op de knop en de structuur van de tekst voor de bouw van een eenvoudig dossier.Omdat dit niet zo snel en doel, zal ik heel snel het uitleggen: als een knop klikt, een functie van vuur.Wanneer we de tekst op het scherm, je een functie van de tekst, en het toont.Er is een tekst van de beschrijving van de knop. Het voorbeeld van de doelstellingen van het dossier is het creëren van een object, deze te schrappen, dan controleren ze worden geschrapt na wat er zal gebeuren.We moeten weten van het object is er niet, dus we voegen een enter_frame op elk object, en laat ze leefde nog toen een tekst.Laten we de code in het eerste object.Ik was die gericht zijn op het creëren van een interessant beeld van de lachende gezichten, prijst het grote spel 米迦勒杰姆斯威廉姆斯 training, maar ook met een glimlach op foto 's.Elk voorwerp zal zijn van een digitale, dus we kunnen hem te identificeren.Trouwens, ik heet de eerste doelstellingen van het tweede doel, theobject1,,,, theobject2, dus het zal gemakkelijk een onderscheid te maken tussen.Laten we naar de code: particuliere var _theobject1:theobject1; particuliere functie newobjectsimple1 (E:MouseEvent): ///////als ongeldig {al bezet, niets doen, als _theobject1 terug te keren; ///////) voor het scheppen van nieuwe materialen, die moet worden toegevoegd aan de lijst van het zo zien we het _theobject1 = nieuwe worden gecreëerd theobject1 () standpunt; _theobject1. X = 320; _theobject1. Y = 280; _theobject1. AddEventListener (event.enter_frame, changetextfield1); addchild (_theobject1);}, tweede object lijkt bijna hetzelfde.Hier is het: particuliere _theobject2:theobject2; var, de privé - functie newobjectsimple2 (E:MouseEvent): ///////als ongeldig {al bezet, niets doen, als _theobject2 terug te keren; ///////) voor het scheppen van nieuwe materialen, die moet worden toegevoegd aan de lijst van zijn, zien wij het creëren van _theobject2 = nieuwe positie _theobject2 theobject2 (); x = 400.; _theobject2. Y = 280; _theobject2. AddEventListener (event.enter_frame, changetextfield2); addchild (_theobject2);}, in code, newobjectsimple1 (), newobjectsimple2 (), is de functie, de knop activeert.Deze functie kan worden tot een object en voeg het toe aan het scherm, dus we weten dat het is opgericht.Bovendien, het creëren van een enter_frame, elk voorwerp, de gebeurtenissen van luisteraars, waardoor ze een boodschap, elke seconde, als positief is.Hier is de privé - functie:, changetextfield1 (E: gebeurtenissen): ///////ongeldig {ons voorbeeld is in de 30 KP 's, dus laten we er 1 /30 van elk beeld in de statistieken._objectcount1 + = 0; ///////_objectcount1 even controleren of de in het verleden als (int (_objectcount1) > ///////_secondcount1) {vertoont een tekst op het scherm van de tekst ("doelstelling 1 nog leeft..."+ int (_objectcount1)); _secondcount1 = int (_objectcount1);}}, private functie changetextfield2 (E: gebeurtenissen): ///////ongeldig {ons voorbeeld is in de 30 KP 's, dus laten we er 1 /30 van elk beeld in de statistieken._objectcount2 + = 0; ///////_objectcount2 even controleren of de in het verleden als (int (_objectcount2) > ///////_secondcount2) {vertoont een tekst op het scherm van de tekst ("doelstelling 2 leeft..."+ int (_objectcount2)); _secondcount2 = int (_objectcount2);}} deze functie, gewoon een boodschap op het scherm object nog leefde.Dit is een van de voorbeelden en de SWF 's:,, stap 4: schrapping van voorwerpen, nu we al gedekt door de oprichting van voorwerpen, laten we het proberen, heb je er nooit aan gedacht, als je echt het schrappen van wat er zal gebeuren (schrapping van alle verwijzingen naar het object?Afval verzameld?Dit is nu de te testen.We moeten de oprichting van twee verwijderen, een voor elk object.Laten we voor ze doen, de code: private functie deleteobject1 (E:MouseEvent): ///////ongeldig {controleren of er echt _theobject1 geschrapt van lijst (als voor het _theobject1 & & bevat (_theobject1)) removechild (_theobject1); ///////verwijderen van alle voorwerpen (dit is de enige referentie) _theobject1 = nul; ///////vertoont een tekst op het scherm van de tekst ("het voorwerp van 1 succes!");}, private functie deleteobject2 (E:MouseEvent): ///////ongeldig {controleren of er echt _theobject2 geschrapt van lijst (als voor het _theobject1 & & bevat (_theobject2)) ///////removechild (_theobject2); het schrappen van alle voorwerpen (dit is de enige _theobject2 referentie) = nul; ///////blijk te geven van een tekst in de de tekst op het scherm ("het voorwerp van 2 succes!");}, laten we kijken nu de SWF 's.Wat denk je dat er gebeurt?En zoals je kan zien.Als je op "het creëren van een" en "geschrapt object1", is er niets gebeurd.We kunnen zeggen dat die code, omdat de tekst op het scherm, maar waarom niet het voorwerp verwijderen?Doel blijft bestaan, omdat het niet is geschrapt.Als we het verwijderen van alle verwijzingen, vertellen we de code, zodat het voldoet aan de terugwinning van afval, maar nooit de werking van de vuilnisman.Weet je nog, toen de toepassing van operationele procedures, als de huidige geheugen gebruiken bij de vuilnisman zal lopen.Dit is zeker zinvol, maar hoe gaan we testen?Natuurlijk niet, ik schrijf een code te vullen we de toepassing van programma 's en nutteloos objecten, totdat het geheugen is te groot.Integendeel, we gebruiken een functie op dit moment niet steunen op grond van de artikelen van Adobe Grant, Skinner, de vuilnisman.Dus, we kunnen dit op de simpele manier veroorzaakt, kijk wat er gebeurt als het werkt.Trouwens, van nu af aan, ik haal de vuilnisman is gaschromatografie, omwille van de eenvoud.De functie van de functie: hier, particuliere forcegc (E:MouseEvent): ongeldig te localconnection {{nieuwe (). In verband met de ('foo "); de nieuwe localconnection (). In verband met de ('foo"); de vangst (E:*) {}) ///////vertoont een tekst op het scherm van de tekst ("- inzameling van afval tot...");}, deze eenvoudige functies, die niet alleen de oprichting van twee localconnection (), waarvan bekend is dat veel moeite om te rennen, dus we noemen het, en we hopen dat deze dingen.Ik wordt niet aanbevolen voor deze functie in een ernstige aanvragen.Als je de test niet doen, het echte probleem, maar als het een aanvraag, worden toegezonden aan de mensen, het is niet echt een goed gebruik van de functie, want het kan een negatieve invloed hebben op de situatie is, stel ik voor dat je alleen laten, gc loopt in zijn eigen tempo.Niet proberen te forceren.Integendeel, gericht op effectieve code geheugen problemen zich niet voordoen, zodat we in stap 6 voor).Nu, laten we nog eens kijken naar ons voorbeeld SWF 's, en klik op "afval" knop te creëren en wissen van voorwerpen, documenten en. Heb je getest?Het werkt!Zie je nu, in het schrappen van een trekker, en de gaschromatografie, het schrappen van het object.Aandacht, als je niet het schrappen van het voorwerp en de gaschromatograaf noemen, er zal niets gebeuren, omdat er nog steeds een verwijzing naar de code van het object.Nu, als we proberen om een voorwerp wordt verwezen naar een doel, en het schrappen van een object, hoe dat kan?Stap 5:,, het creëren van een referentie, nu hebben we bewijs van de werk - dat is precies wat we willen, laten we iets anders proberen: koppeling van een andere verwijzing naar het object (is) en het schrappen van de oorspronkelijke.Ten eerste, we moeten de oprichting van een functionele band en het afsluiten van een referentiepunt.Laten we het zo doen: privé - functie, saveobject1 (E:MouseEvent): ///////_onsave nietigverklaring {is een booleaanse om te controleren of de banden of referentie als moet worden afgeschaft (_onsave) {///////als object niet redden, niets doen, als (!_theobject1) {///////vertoont een tekst op het scherm van de tekst ("niet tegen 1!")Terug naar de; ///////;) nieuwe variabelen voor het behoud van een andere Referentie object1 _thesavedobject = _theobject1; ///////vertoont een tekst op het scherm van de tekst ("red 1 succes!")Op de volgende vlucht; ///////de functie, de afschaffing van het, omdat wij gewoon niet anders _onsave =;} {het schrappen van verwijzingen naar het _thesavedobject //////////////= nul; dat een tekst op het scherm ("behoud van De tekst niet het doel 1 succes!")Op de volgende vlucht; ///////de functie, banden, omdat wij gewoon niet _onsave = waar;}}, als we een test van onze SWF 's nu, vinden wij dat, als we het creëren van gebeurt, dan redden we het, het schrappen van het gedwongen GC, wat nooit zal gebeuren.Dit is omdat nu, zelfs als we schrappen "origineel" te koppelen aan de voorwerpen, er is nog een verwijzing naar het handhaven van het door het in aanmerking komende inzameling van afval.Dit is wat je moet weten van de vuilnisman.Dat is geen mysterie, na alles.Maar, hoe we de toepassing van onze huidige milieu?Hoe kunnen we gebruik maken van deze kennis, om te voorkomen dat de toepassing van ons programma langzaam?Dit is een stap 6 zal laten zien hoe we dit in de praktijk: de toepassing van de in stap 6: voorbeeld, zodat je de code nu het beste deel: efficiëntie, zodat je de code en doeltreffende gaschromatografie.Deze stap zal nuttige informatie verstrekken, moet je om je hele leven - het behoud van het juiste.In de eerste plaats wil ik de invoering van een nieuwe methode voor de berekening van de toepassing van het object van je.Dit is een eenvoudige, maar doeltreffende wijze met gaschromatografie.Deze methode wordt twee eenvoudige, kan worden uitgebreid tot andere mensen, als je dat begrijpt het, dus het idee is dat een functie van genaamd vernietigen (), elk voorwerp creëert, elke keer dat je met het doel de voltooiing van het werk bellen.De functie van de code bevat alle noodzakelijke voor de afschaffing van alle referenties, en van voorwerpen (met uitzondering van verwijzingen, dit is voor de functie), dus je laat je aanvraag om ervoor te zorgen dat de doelstellingen volledig te isoleren, en het is gemakkelijk te herkennen van de gaschromatografie.In de volgende redenen.Laten we de code te vinden in de algemene functies: het scheppen van een doel, /je gebruik maken van een openbare functie vernietigen ():void {//////////////geschrapt. Het schrappen van een in de lijst /duidelijke verwijzingen naar andere voorwerpen, dus het wordt volledig geïsoleerd) ///////...Als je wil dat het schrappen van /object, dat zulke voorwerpen. Vernietigen; ///////() en de lucht, de laatste verwijzing naar doel =; in deze functie, je moet alles duidelijk doel, dus het is nog steeds een scheiding aanvragen.Na dit te doen, zou het gemakkelijker zijn de gaschromatografie - en het schrappen van een object.Laten we nu eens kijken naar de situatie van de meeste fouten in herinnering: een object voor gebruik in de uitvoering van interval: wees voorzichtig, omdat ze waarschijnlijk veel geheugen object.Deze dingen zijn een tijd (bijvoorbeeld in een functie die opslag waarde), en ze kan niet vaak bezoek.Weet je nog, als je klaar bent, het schrappen van de verwijzing, of je kan veel in je aanvraag, geheugen.Weet je nog, als je te veel verwijzingen naar hen, moet elk door de afschaffing van de beschermende functie van (de),,.,, in de lijst, links object: een object dat in de lijst van als je het wilt verwijderen.De lijst is een van hen, de inzameling van afval (wortel, weet je nog?Dus als je je spullen uit het verwijderen, je spullen, dit is heel belangrijk, als je graag gebruik maken van deze kenmerken, herinner je je in als je klaar bent om ze te schrappen.Als je er veel van de voorwerpen een referentie, jij kan problemen krijgen.,,,.,: soms, om je doel te verkrijgen is van verwijzingen naar een geval van luisteraars.Weet je nog dat ze verwijderen, of ze als zwakke luisteraars, indien nodig, netwerken en vectoren, soms je installatie en andere voorwerpen in de vector mag citeren, die blijven, dat weet je niet.- en op de vector!,,, stap 7: referentie - eiland, hoewel met gaschromatografie is geweldig, het is niet perfect.Je moet zien wat je doet, of het zal gebeuren in je aanvraag.Ik denk dat dat een probleem als je niet alle vereiste stappen volgen, zodat je de code gc - en het recht op werk, soms, als je het niet duidelijk alle verwijzingen, van een voorwerp, kan je een van deze problemen, met name als je met veel dingen in je aanvraag programma 's.Soms, een enkele verwijzingen kunnen laten gebeuren: alle voorwerpen is een verwijzing naar het eiland, alle voorwerpen in verband met andere, niet toegestaan gebruik te maken van de gaschromatografie te verwijderen. Wanneer de gaschromatografie loopt, is het voorwerp van de controles van de uitvoering van de taak om eenvoudig te schrappen.Een van de taken van elk voorwerp is berekend hoeveel genoemd.Alle voorwerpen, en het verzamelen van 0 verwijzingen.Een andere taak is te controleren of er geen kleine een object met elkaar zijn verbonden, maar niet tot een verspilling van de ruimte.Check de beelden, zoals je kunt zien, groene voorwerpen niet bereiken, maar hun referentie tellen is 1.De tweede taak van gaschromatografie, controleer het voorwerp van een blok, en het verwijderen van alle.Echter, wanneer de groep een te groot, gc "verlaten" onderzoek en dat doel bereikt kan worden.Stel je voor, als je in zulke dingen: dat is de referentie, op het eiland.Dit zal veel vergen van de herinnering, niet worden verzameld van de gaschromatografie, omdat het ingewikkeld is.Dat klinkt slecht, is het niet?Het kan gemakkelijk worden vermeden, maar.Zorg ervoor dat je vrijgesproken van alle verwijzingen, van een voorwerp, dan vreselijke dingen gebeuren.,, conclusies, dit is nu.In deze tip, dat weten we, we kunnen onze code beter en efficiënter te verminderen, de LAG en het geheugen probleem, waardoor het meer stabiliteit.En om dat te doen, moeten we begrijpen dat verwijzingen in 3, en hoe we kunnen profiteren van de in de aanvraag, de nodige gc - werk.Ondanks het feit dat we kunnen onze toepassing, we moeten voorzichtig zijn wanneer we dat doen - anders zal het steeds moeilijker en trager.Ik hoop dat je deze simpele tips.Als je een probleem hebt, de volgende opmerkingen zou opgeven.,







Previous:
Next Page: