Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Razlog za boost::weak_ptr?

[es] :: C programiranje :: Razlog za boost::weak_ptr?

[ Pregleda: 510 | Odgovora: 3 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3632
*.navman.com.



Profil

icon Razlog za boost::weak_ptr?14.02.2006. u 03:19

Zasto bi neko koristio weak ptr umesto shared ptr kada da bismo pristupili objektu na koji pokazuje weak ptr mi moramo da napravimo shared ptr (znaci nije zbog performansi)?
14.02.2006. u 03:19 

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3632
*.navman.com.



Profil

icon Re: Razlog za boost::weak_ptr?14.02.2006. u 03:29
Da odgovorim sam sebi. Moze fino da se iskoristi u multithread programima kada hocemo da vidimo da li neki objekat i dalje postoji jer bi nam u tom slucaju pravljenje shared ptr-a kod pristupanja tom objektu bacio exception. Da li postoji jos neka primena?
14.02.2006. u 03:29 

Dragi Tata

Član broj: 1958
Poruke: 3880
*.lionbridge.com.

Sajt: www.novetehnologije.com


Profil

icon Re: Razlog za boost::weak_ptr?14.02.2006. u 13:35
Osnovni razlog za weak_ptr je razbijanje "cikličnih referenci". Doduše, moguće je koristiti i običan "goli" pointer u tu svrhu, ali je bezbednije sa weak_ptr.

Vidi recimo ovo (pisao neki naš čovek)

http://www.jelovic.com/article...thout_memory_errors_slides.htm
14.02.2006. u 13:35 

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3632
*.jetstream.xtra.co.nz.



Profil

icon Re: Razlog za boost::weak_ptr?14.02.2006. u 14:30
Citat:
Dragi Tata: Osnovni razlog za weak_ptr je razbijanje "cikličnih referenci". Doduše, moguće je koristiti i običan "goli" pointer u tu svrhu, ali je bezbednije sa weak_ptr.


Da, nisu mi pale na pamet ciklicne liste ili child to parent pokazivaci. Hvala.
14.02.2006. u 14:30 

[es] :: C programiranje :: Razlog za boost::weak_ptr?

[ Pregleda: 510 | Odgovora: 3 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.