Skip to Content
Common Design Patterns for Symbian OS: The Foundations of Smartphone Software
book

Common Design Patterns for Symbian OS: The Foundations of Smartphone Software

by Adrian A. I. Issott
December 2008
Intermediate to advanced
443 pages
10h 24m
English
Wiley
Content preview from Common Design Patterns for Symbian OS: The Foundations of Smartphone Software

3.3. Lazy De-allocation

Intent

Delay the de-allocation of a resource so that an almost immediate re-use of the resource does not incur a performance penalty.

AKA

Delayed Unloading, Lazy Unloading

3.3.1. Problem

3.3.1.1. Context

A resource which is expensive to allocate or de-allocate is used frequently

3.3.1.2. Summary
  • The resources you are interested in are scarce and need to be shared across the system.

  • The use of the resource comes in bursts so that if it is used once there is a good chance it'll be used again soon.

  • You need to provide quick responses and so need to avoid having to allocate a resource whenever possible.

3.3.1.3. Description

As has been repeated many times throughout this book, an open mobile device has a number of constraints that don't affect a PC; in comparison, a PC has almost limitless resources. Mobile devices are also different from small embedded systems such as microwaves and personal video recorders, which have similar, if not stricter, resource constraints. However, they are not expected to be multi-tasking nor to allow the installation of new applications or services which is a key requirement of an open device. Hence when you are developing software for Symbian you need to be a 'good citizen' and cooperate with the other components on a device by sharing resources well.

Part of being a 'good citizen' is to de-allocate resources that you have allocated when they are no longer needed. While this is most commonly true of allocations of memory, ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Cocoa Programming for OS X: The Big Nerd Ranch Guide

Cocoa Programming for OS X: The Big Nerd Ranch Guide

Aaron Hillegass, Adam Preble, Nate Chandler

Publisher Resources

ISBN: 9780470516355Purchase book