iPhone, сборка мусора отсутствует: как насчет MonoTouch? - PullRequest
8 голосов
/ 12 мая 2010

Хорошо известно, что Apple не обеспечивает автоматическую сборку мусора на iPhone, чтобы продлить срок службы батареи . Тем не менее, приложения MonoTouch, которые, как сообщается, отлично работают на iPhone (и многие из них продаются через AppStore, поэтому одобрены Apple), действительно имеют автоматический сбор мусора.

  1. Это автоматическая сборка мусора, или MonoTouch просто управляет всеми retain/release вещами для вас?
  2. Если это автоматический сборщик мусора, разве это не разрядит батарею?

Редактировать: Если ваш ответ на вопрос № 1 - «да», а ответ на вопрос № 2 - «нет», почему?

Историческое редактирование: Следует отметить, что Apple решила пойти другим путем для iOS 5.0 и внедрить ARC (также позволяя скомпилированному к тому же SDK коду работать и на iOS 4.x) ,

1 Ответ

6 голосов
/ 12 мая 2010

Да, это настоящая сборка мусора. MonoTouch основан на Mono. Который использует Boehm-Demers-Wiser Консервативный сборщик мусора (уплотняющий сборщик мусора находится в разработке). Он способен автоматически собирать не связанные объекты. Использование C # и .NET будет менее оптимальным, чем использование Objective-C / C ++ / C, когда дело касается времени автономной работы, поскольку для выполнения той же работы потребуется больше тактовых частот процессора, но если ваше приложение не загружает процессор, это, вероятно, незначителен. Я не думаю, что вы окажете заметное влияние на срок службы батареи.

...