Главная проблема многопоточности в том, что она сложна для разработчиков приложений.<...> Многопоточная система должна предоставлять программисту системные примитивы для обеспечения взаимодействия потоков. <...> Внезапно, разработчики столкнулись с необходимостью беспокоиться о вещах, которые раньше были само собой разумеющимися, таких как целостность и устойчивость контекста во время исполнения. Им пришлось заботиться об этом самим на уровне приложения. Хуже того, они вынуждены были учиться справляться с потенциально сложным взаимодействием потоков в рамках их программ<...>
Но, в то время как другие операционные системы всё больше и больше адаптируют многопоточность для использования на прикладном уровне, активные объекты Symbian OS предлагают альтернативную и более простую модель для управления асинхронным поведением приложения в событийно-ориентированной системе. Активные объекты показали себя настолько эффективными на практике, что на большинстве уровней над ядром, включая системные службы, они стали стандартным шаблоном для реализации любого асинхронного поведения.
В результате, при программировании для Symbian OS практически отпала необходимость в семафорах, блокировках и прочих примитивах потока. Это значительно упростило разработку, и снизило вероятность возникновения потенциальных ошибок.
Целевой рынок устройств для Symbian OS, по сути, является потребительским, и надежность — главный фактор на этом рынке. Поэтому, отсутствие ошибок при программировании – прямой путь к успеху. Есть еще одна важная причина создания активных объектов — это экономия процессорного времени и энергии. Symbian OS рассчитана на устройства, работающие от батарей, и обладающих процессорами с достаточно скромной производительностью. Операционные системы персональных компьютеров, даже после миграции на мобильные устройства, хуже приспособлены к работе с подобным аппаратным обеспечением.
Переключение между активными объектами, работающими в одном потоке (это наиболее распространенная ситуация), позволяет избежать затрат на переключение контекста потоков. Поэтому, приложение, реализующее асинхронность с помощью активных объектов обладает большей производительностью, чем приложение, использующее несколько потоков.