2009-06-30 4 views
5

Если нет, планируете ли вы добавить сборку мусора на iPhone?Есть ли у iPhone OS 3.0 настоящий сборщик мусора?

Связанный вопрос: Этот question с января (pre OS 3.0) говорит, что у iPhone не было GC в то время.

Спасибо!

+1

FYI: В 4.0 также нет GC ObjC. (Конечно, компонент Javascript - сборщик мусора.) – kennytm

ответ

15

iPhone OS 3.0 не имеет функций сбора мусора, и Apple не указала, что они будут включать эту функцию в будущие выпуски ОС (они, как правило, скрывают о будущих функциях). Вам все еще нужно управлять памятью вручную через alloc, release и autorelease звонки.

4

Нет, это не так. Нет никаких заявленных планов добавить, что я знаю.

Подозревает, что, по крайней мере, часть причины вызвана опасениями со стороны Apple о производительности.

+0

Не только производительность приложений, но и производительность ленивых программистов – Grouchal

+0

Если сбор мусора - это костыль ленивых программистов, и скорость является самым важным фактором, то Apple должна требовать от приложений быть записаны в сборке. Только «ленивым» программистам нужен цикл кражи костылей вызова метода ... правильно? Не. Распределение памяти вручную не является чем-то серьезным испытанием программирования, чем программирование в сборке. GC (как вызов метода) - это инструмент, который дает более чистый, более управляемый, более отлаживаемый код. GC освобождает программистов, чтобы мыслить на уровне дизайна объекта, а не на уровне памяти. –

+0

Это не скорость. Если бы скорость была единственной проблемой с GC, iPhone определенно имел бы ее доступную. Проблема - время работы от батареи; сборщики мусора ускоряют работу батареи. –