GC.[spausk tada ctrl+space] :)) "Valdas" <valdonas@super.lt> wrote in message news:ia35n5$bs4$1@trimpas.omnitel.net... > Na o tai kaip mano atveju (Visual Studio 5, Visual Basic), prisibrauti prie > to GC (Garbage Collector) ? > > "Jornada Del Muerto" <agiraTrintI@gmx.co.uk> wrote in message > news:i9s1h6$n88$1@trimpas.omnitel.net... >> Instance tai kazkokio tipo sukurtas objektas, pvz.: DataTable yra tipas, >> tipas gali buti klase, struktura, ar primityvus tipas pvz int ir t.t.. tai >> yra tipas, o sio tipo sukurtas objektas yra to tipo object instance, arba >> tiesiog to tipo instance, pvz.: >> >> Daleiskim tu susikurei savo open file dialog klase, ja uzvadinai >> "ManoFileOpenDialogas" <- kitaip sakant sukurei ManoFileOpenDialogas tipa. >> >> ' Deklaruojam >> Dim a As ManoFileOpenDialogas ' nurodai kad kintamasis a bus >> ManoFileOpenDialogas tipo >> >> ' kintamajame a sukuriu (kiti dar vadina inicializuoju) >> ManoFileOpenDialogas tipo object instance >> a = new ManoFileOpenDialogas ' va a ir bus instance (dar kiti vadintu >> objektu, zodziu kaip nepavadinsi taip nepagadinsi) >> >> Siaip terminologijos ipac tokios bazines OOP vertetu pasimokinti, ok >> toliaujam keliau :) tau ka is esmes norejo pasakyti zmones, kad .NET yra >> toks dalykas kaip GC (Garbage Collector) grubiai vertus, siuksliu >> rinkejas, pvz. kokiam nors C++ viska alokuota rankiniu budu atminti skirta >> kazkokiam programos darbui, po to reikedavo nepamirsti atlaisvinti - >> kitaip ji uzimdavo ir toliau vieta ir su laiku prisikaupdavo tos >> rezervuotos/alokuotos atminties daug, nuo ko galedavo luzti programa, .net >> atvejais tam buna ivairus metodai dispose ir pan.. Bet .NET daugeli tokiu >> objektu pasalina pats GC pagalba, del to greiciausia su tavuoju objektu >> taspats atsitinka, tiesiog reik suprasti kokiom aplinkybem .net pats juos >> naikina. >> >> Visumoje .net automatu, kaip jau ir minejau naikina objektus kurie >> niekur nera saugomi ar isiminti, pvz kazkokiam kintamajame ir panasiai, >> pvz. turime funkcija: >> >> Public Sub ManoFunkcija >> >> Dim a As ManoFileOpenDialogas ' >> a = new ManoFileOpenDialogas >> >> ' dirbi su a >> a.DoModal() ' ir t.t... >> >> End Sub >> >> Isejus is sios funkcijos a bus automatiskai naikinamas, bet sekanti >> karta iskvietus sia funkcija (tiksliau metoda) objektas sukuriamas bus is >> naujo, taip va ir turetu buti daroma, paprastai atmintyje niekas nelaiko >> inicializuotu OpenFileDialog'u, aplamai kuo maziau laikysi tokio >> nereikalingo saugoti slamsto tuo tavo programa maziau resursu valgys, o >> jeigu nori ji saugotis del to kad naudosi labai daznai (nebent) tai >> saugokis toje klaseje kuri su juo dirbs, tada butu kazkas tokio: >> >> ' Klases, bet ne metodo/funkcijos zonoje deklaruotas kintamasis >> public OpenFile As ManoFileOpenDialogas = Null ' Nepamenu gerai VB.NET >> sintakses, paskutini kart reikejo pries 5 metus >> >> Public Sub ManoFunkcija >> >> If Me.OpenFile = Null Then ' rodos VB kitaip tikrinasi ar objektas null >> Me.OpenFile = new ManoFileOpenDialogas >> End If >> >> ' kreipiesi i savo dialoga >> Me.DoModal() ' ir t.t... >> >> End Sub >> >> Tada 1 karta bus sukuriamas dialogas ir veliau pernaudojamas ji nekuriant >> dar karta, tuo paciu jis saugomas bus klaseje kuri ji naudoja, siaip tai >> geriausia savo kodo parasytum, tai tada butu aiskiau kas negerai, gal beda >> visai kitur. >> >> >> Freelancer Developer [R&D] >> http://www.lythum.lt >> >> Naujausias research: >> http://wiki.lythum.lt/index.php?title=Facebook_integrafimo_galimyb%C4%97s >> >> >> "Valdas" <valdonas@super.lt> wrote in message >> news:i9rr3e$cre$1@trimpas.omnitel.net... >>> na as kazko nesuprantu, siaip as ant Visual Basic darau, tai kas tas >>> instance nezinau :(( >>> >>> "Andrius F" <andriusflMORESPAM@gmail.com> wrote in message >>> news:i9rq8p$bic$1@trimpas.omnitel.net... >>>> kiekviena karta pries ShowDialog() kurk nauja instance.. >>>> using(var form = new SomeForm()) >>>> { >>>> if(form.ShowDialog(this) == DialogResult.Ok) >>>> { >>>> ... >>>> } >>>> } >>>> >>>> "Valdas" <valdonas@super.lt> wrote in message >>>> news:i9rf9u$qk9$1@trimpas.omnitel.net... >>>>> ka reiskia nereusint instance, tai kaip tada naudotis tuo ShowDialog ? >>>>> man reikalingas tas modaliskumas, nes darau savo open file dialoga, ir >>>>> kai uzdarau forma, tik tuomet gaunu reiksme... >>>>> >>>>> "fakeID" <fakeID@fakeHost.com> wrote in message >>>>> news:i9rcss$n3d$1@trimpas.omnitel.net... >>>>>> Nereiktu reusinti formos instance, nebent tau tikrai taip reikia (pvz >>>>>> forma kuriasi 15 sek, bet tada turbut kazkas blogai su tavo forma ;).. >>>>>> Blogiausiu atveju isitikink, kad GarbageCollector nesunaikins tavo >>>>>> formos: >>>>>> a. ikisk instance i static field >>>>>> b. galbut verta overridint close, ir hidint forma vietoj >>>>>> base.close() >>>>>> >>>>>> bet siaip - nereusink instance. tai bloga architektura >>>>>> >>>>>> "Valdas" <valdonas@super.lt> wrote in message >>>>>> news:i9r6gd$er1$1@trimpas.omnitel.net... >>>>>>> Sveiki, iskilo tokia beda, bandant is vienos formos atidaryti kita >>>>>>> "Forrm2.ShowDialog()", pradzioje atidaro, bet programai padirbus >>>>>>> kokia >>>>>>> valanda ir vel bandant atidaryti, meta klaida >>>>>>> "ObjectDisposedException", gal nujauciat kur cia beda ? >>>>>>> >>>>>>> aciu >>>>>>> >>>>>>> >>>>> >>>>> >>> >>> > >