{"38875":{"id":38875,"votes":1,"views":0,"text":"```zapomnisz jawnie zwolni\u0107 zaatakowany fragment pami\u0119ci``` - czy nie powinien by\u0107 \"zaalokowany\" zamiast \"zaatakowany\"? :P","html":"
Hello again :-)<\/p>\n Rust jest j\u0119zykiem, kt\u00f3ry udost\u0119pnia ca\u0142\u0105 gam\u0119 zmiennych wbudowanych, zwanych prymitywami.<\/p>\n<\/blockquote>\n Zmienna != typ.<\/p>\n Niekt\u00f3re j\u0119zyki maj\u0105 wbudowane jawne mechanizmy alokowania (...) Takimi j\u0119zykami s\u0105 np: C czy C++, gdzie (...) musimy najpierw powiedzie\u0107 w spos\u00f3b jawny, \u017ce chcemy powo\u0142a\u0107 do \u017cycia tak\u0105 zmienn\u0105, z czym wi\u0105\u017ce si\u0119 odpowiednie zapotrzebowanie na pami\u0119\u0107.<\/p>\n<\/blockquote>\n I tak, i nie - patrz: RAII.<\/p>\n W niekt\u00f3rych j\u0119zykach wyst\u0119puje mechanizm wspieraj\u0105cy zwany Garbage Collectorem (...). Nie zwalnia to programisty z konieczno\u015bci posprz\u0105tania po sobie, gdy alokuje co\u015b dynamicznie.<\/p>\n<\/blockquote>\n GC jak najbardziej zwalnia programist\u0119 z konieczno\u015bci posprz\u0105tania po sobie - w kt\u00f3rych przypadkach w takiej Javie czy Ruby trzeba r\u0119cznie zwolni\u0107 pami\u0119\u0107, bo GC nigdy<\/em> si\u0119 nie aktywuje? (nie licz\u0105c hack\u00f3w)<\/p>\n [w Ru\u015bcie] Nie ma te\u017c mechanizmu Garbage Collectora, kt\u00f3ry w trakcie dzia\u0142ania programu b\u0119dzie za nas usuwa\u0107 nieu\u017cytki.<\/p>\n<\/blockquote>\n [Rust] Wprowadza w\u0142asny mechanizm Ownership<\/p>\n<\/blockquote>\n AFAIR mechanizm @DevEnv<\/a>: Nie wiem dlaczego, ale czytaj\u0105c mia\u0142em wra\u017cenie jakby co\u015b zosta\u0142o wyci\u0119te z paragrafu Dzi\u0119ki za pomoc i uwagi Co do stwierdzenia \"nie zwalnia programisty z konieczno\u015bci posprz\u0105tania\" bardziej chodzi\u0142o mi o dobr\u0105 praktyk\u0119 i fakt, \u017ce mo\u017ce doj\u015b\u0107 do sytuacji wycieku pami\u0119ci w tych j\u0119zykach. Zbytnie uproszczenie. Przeformatuje to. W Ru\u015bcie faktycznie wyst\u0119puje mechanizm bazuj\u0105cy na zliczaniu odwo\u0142a\u0144. Nie chcia\u0142em wrzucza\u0107 tego do wora GC znanego mi z C# i Javy.<\/p>\nzapomnisz jawnie zwolni\u0107 zaatakowany fragment pami\u0119ci<\/code> - czy nie powinien by\u0107 \"zaalokowany\" zamiast \"zaatakowany\"? :P<\/p>\n","parent_id":38874,"url":"https:\/\/4programmers.net\/Mikroblogi\/View\/38874#comment-38875","created_at":"2018-12-27T10:13:44+01:00","updated_at":"2018-12-27T10:13:44+01:00","comments":[],"user":{"id":90224,"name":"cerrato","is_online":false,"photo":"https:\/\/4programmers.net\/uploads\/photo\/5a\/5a8ecfd189a33.jpg","deleted_at":null,"is_blocked":false},"permissions":{"update":false,"moderate":false},"type":"microblog","assets":[],"is_sponsored":false,"metadata":"eyJpdiI6IlRRbzVNS1pPZ3BnUEtGcUpFaHFQbXc9PSIsInZhbHVlIjoiUkFONHNWQXh6cHJIUUpEZHBabzh4UStkZC8rNC82OHVnVGkycW1DOG9xeEx4N0RpWXF5ZE1ma1gvSUZBMU5KSCIsIm1hYyI6IjYyMzAxNzM1OWI1NTFjZTU2ZTBjYjg3YzViZDg0MThiNTc2NGExOWZlMGEyM2RiNzhhMjY2NjhlNWNkYmMyNmYiLCJ0YWciOiIifQ==","deleted_at":null},"38876":{"id":38876,"votes":6,"views":0,"text":"Hello again :-)\r\n\r\n> Rust jest j\u0119zykiem, kt\u00f3ry udost\u0119pnia ca\u0142\u0105 gam\u0119 zmiennych wbudowanych, zwanych prymitywami.\r\n\r\nZmienna != typ.\r\n\r\n> Niekt\u00f3re j\u0119zyki maj\u0105 wbudowane jawne mechanizmy alokowania (...) Takimi j\u0119zykami s\u0105 np: C czy C++, gdzie (...) musimy najpierw powiedzie\u0107 w spos\u00f3b jawny, \u017ce chcemy powo\u0142a\u0107 do \u017cycia tak\u0105 zmienn\u0105, z czym wi\u0105\u017ce si\u0119 odpowiednie zapotrzebowanie na pami\u0119\u0107.\r\n\r\nI tak, i nie - patrz: RAII.\r\n\r\n> W niekt\u00f3rych j\u0119zykach wyst\u0119puje mechanizm wspieraj\u0105cy zwany Garbage Collectorem (...). Nie zwalnia to programisty z konieczno\u015bci posprz\u0105tania po sobie, gdy alokuje co\u015b dynamicznie.\r\n\r\nGC jak najbardziej zwalnia programist\u0119 z konieczno\u015bci posprz\u0105tania po sobie - w kt\u00f3rych przypadkach w takiej Javie czy Ruby trzeba r\u0119cznie zwolni\u0107 pami\u0119\u0107, bo GC _nigdy_ si\u0119 nie aktywuje? (nie licz\u0105c hack\u00f3w)\r\n\r\n> [w Ru\u015bcie] Nie ma te\u017c mechanizmu Garbage Collectora, kt\u00f3ry w trakcie dzia\u0142ania programu b\u0119dzie za nas usuwa\u0107 nieu\u017cytki.\r\n\r\n`Rc` oraz `Arc` s\u0105 przyk\u0142adami GC dzia\u0142aj\u0105cego w runtime.\r\n\r\n> [Rust] Wprowadza w\u0142asny mechanizm Ownership\r\n\r\nAFAIR mechanizm `ownership` nie jest pomys\u0142em autor\u00f3w Rusta.","html":"
\n
\n
\n
\n
Rc<\/code> oraz
Arc<\/code> s\u0105 przyk\u0142adami GC dzia\u0142aj\u0105cego w runtime.<\/p>\n
\n
ownership<\/code> nie jest pomys\u0142em autor\u00f3w Rusta.<\/p>\n","parent_id":38874,"url":"https:\/\/4programmers.net\/Mikroblogi\/View\/38874#comment-38876","created_at":"2018-12-27T11:48:26+01:00","updated_at":"2018-12-27T11:48:26+01:00","comments":[],"user":{"id":25239,"name":"Patryk27","is_online":false,"photo":"https:\/\/4programmers.net\/uploads\/photo\/586c0e30b7edf.jpg","deleted_at":null,"is_blocked":false},"permissions":{"update":false,"moderate":false},"type":"microblog","assets":[],"is_sponsored":false,"metadata":"eyJpdiI6IlBXUkdzSU16SEhLS2xEVThrUE11YWc9PSIsInZhbHVlIjoicTBleEpWclh2V2k5Nm5OK3BIOVA2WEtqWDMvOXZrRmxhRDBFR0FueUhBelFVMGd2dFd5S1lXV1J4NXBWTGJCVyIsIm1hYyI6ImQ3Njg5N2U3NDM3MDZkYmQ3YmIwNjM5MDM2ZDM0NjBmYTIwYWMxNjg1YjczNzQ3ZmVhNGQ0ZWUyMWQwNWMxY2MiLCJ0YWciOiIifQ==","deleted_at":null},"38883":{"id":38883,"votes":1,"views":0,"text":"@DevEnv: Nie wiem dlaczego, ale czytaj\u0105c mia\u0142em wra\u017cenie jakby co\u015b zosta\u0142o wyci\u0119te z paragrafu `Pozna\u0107 Ownership`, ale mo\u017ce to tylko moje odczucie. Dodatkowo mam wra\u017cenie lania wody, a ma\u0142o mi\u0119ska :( mo\u017cliwe \u017ce jestem roszczeniowy :P","html":"
Pozna\u0107 Ownership<\/code>, ale mo\u017ce to tylko moje odczucie. Dodatkowo mam wra\u017cenie lania wody, a ma\u0142o mi\u0119ska :( mo\u017cliwe \u017ce jestem roszczeniowy :P<\/p>\n","parent_id":38874,"url":"https:\/\/4programmers.net\/Mikroblogi\/View\/38874#comment-38883","created_at":"2018-12-27T13:21:45+01:00","updated_at":"2018-12-27T13:21:45+01:00","comments":[],"user":{"id":56470,"name":"Dregorio","is_online":false,"photo":null,"deleted_at":null,"is_blocked":false},"permissions":{"update":false,"moderate":false},"type":"microblog","assets":[],"is_sponsored":false,"metadata":"eyJpdiI6IllKVmdKWTFobVZubnFJbmI3LzJFdmc9PSIsInZhbHVlIjoiVVorb0s3WkRyaDZiTWFhSk83YzhmWXNwVVcwbnZyN1h5MDVzWXlsYkZxL2ZTMXpMUEpHV0h5ZGllT2p4M2RVOSIsIm1hYyI6ImYyYTI1Zjk4MGQzNDk4MDFjNjhjMGZkMWEyZmM5MWNiZjdkNzg1OTA3OWE1MmRiNzEwNWFhMWFlNGQxMTM0NTkiLCJ0YWciOiIifQ==","deleted_at":null},"38896":{"id":38896,"votes":1,"views":0,"text":"Dzi\u0119ki za pomoc i uwagi\r\n@cerrato: niezamierzona liter\u00f3wka.\r\n@Patryk27: Faktycznie chodzi\u0142o mi o typ :) Faktycznie u\u017cycie stwierdzenia \"w\u0142asny\" jest niefortunne, bardziej odpowiednie by\u0142oby unikalny.\r\n\r\nCo do stwierdzenia \"nie zwalnia programisty z konieczno\u015bci posprz\u0105tania\" bardziej chodzi\u0142o mi o dobr\u0105 praktyk\u0119 i fakt, \u017ce mo\u017ce doj\u015b\u0107 do sytuacji wycieku pami\u0119ci w tych j\u0119zykach. Zbytnie uproszczenie. Przeformatuje to.\r\nZe wzgl\u0119du na charakter tekstu nie chcia\u0142em odnosi\u0107 si\u0119 do using\u00f3w, Disposable oraz unsafe. GC w wi\u0119kszo\u015bci przypadk\u00f3w w ko\u0144cu si\u0119 aktywuje lub mu w tym pomo\u017cemy robi\u0105c to r\u0119cznie lub sko\u0144czy si\u0119 pami\u0119\u0107 :)\r\n\r\nW Ru\u015bcie faktycznie wyst\u0119puje mechanizm bazuj\u0105cy na zliczaniu odwo\u0142a\u0144. Nie chcia\u0142em wrzucza\u0107 tego do wora GC znanego mi z C# i Javy.\r\n \r\n@Dregorio: Niestety to jest wst\u0119p za tydzie\u0144 wrzuc\u0119 drug\u0105 cz\u0119\u015b\u0107 z kilku. Ownership okaza\u0142 si\u0119 bardziej z\u0142o\u017conym tematem, na wi\u0119cej ni\u017c jeden artyku\u0142.","html":"
\n@cerrato<\/a>: niezamierzona liter\u00f3wka.
\n@Patryk27<\/a>: Faktycznie chodzi\u0142o mi o typ :) Faktycznie u\u017cycie stwierdzenia \"w\u0142asny\" jest niefortunne, bardziej odpowiednie by\u0142oby unikalny.<\/p>\n
\nZe wzgl\u0119du na charakter tekstu nie chcia\u0142em odnosi\u0107 si\u0119 do using\u00f3w, Disposable oraz unsafe. GC w wi\u0119kszo\u015bci przypadk\u00f3w w ko\u0144cu si\u0119 aktywuje lub mu w tym pomo\u017cemy robi\u0105c to r\u0119cznie lub sko\u0144czy si\u0119 pami\u0119\u0107 :)<\/p>\n