Re: [問題] 記憶體管理機制為何不跟java一樣

看板MacDev作者 (阿湯)時間2年前 (2022/04/22 14:54), 編輯推噓2(205)
留言7則, 4人參與, 2年前最新討論串2/2 (看更多)
※ 引述《wfgh (lyle)》之銘言: : 為何objective-c的記憶體管理機制不跟java一樣 : java只要該物件沒有被reference到就符合garbage collection的絛件 : 而objective-c還要release : 這兩者各有什麼優缺點嗎? : 或者objective-c這樣設計是為了什麼目的嗎(例如更適合來做哪方面的寫作) 拿垃圾車當比喻,java容易遇到的問題是: 「萬一垃圾車來晚了怎麼辦」 那當然就爆啦,這種事在java經常發生 程式裡面產生一堆大型class,被垃圾淹死才知道痛 目前obj-c和swift都已實行 "automatic reference count" (ARC) 所以也不需要自己手動release (監控ref count == 0 時就釋放) 只能說這兩種語言的出發點不同,並非所有物件導向語言都崇尚 集中的「垃圾車管理」,不過到後來還是會有類似的東西, 只是實作方向不同... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.147.160 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1650610483.A.C0E.html

04/24 11:45, 2年前 , 1F
這回文...十年磨一劍嗎?
04/24 11:45, 1F

04/25 02:02, 2年前 , 2F
畢竟obj-c還是現役 並未被完全淘汰
04/25 02:02, 2F

04/25 09:18, 2年前 , 3F
你還在用沒有ARC的obj-c寫code?
04/25 09:18, 3F

04/26 15:43, 2年前 , 4F
抱歉 偶而會在github看到早期的objc
04/26 15:43, 4F

04/26 15:43, 2年前 , 5F
理解一下而已
04/26 15:43, 5F

04/27 21:32, 2年前 , 6F
其實有沒有ARC差別不是很大啊 XD
04/27 21:32, 6F

05/03 11:55, 2年前 , 7F
Swift 跟 Objective-C 應該也是用一樣機制
05/03 11:55, 7F
文章代碼(AID): #1YOb4pmE (MacDev)
文章代碼(AID): #1YOb4pmE (MacDev)