Skip to Content
Developing Software for Symbian OS: A Beginner's Guide to Creating Symbian OS v9 Smartphone Applications in C++
book

Developing Software for Symbian OS: A Beginner's Guide to Creating Symbian OS v9 Smartphone Applications in C++

by Steve Babin
December 2007
Beginner to intermediate
460 pages
10h 12m
English
Wiley
Content preview from Developing Software for Symbian OS: A Beginner's Guide to Creating Symbian OS v9 Smartphone Applications in C++

Chapter 9. Processes, Threads, and Synchronization

In Chapter 3, I gave an overview of the multitasking capability of Symbian OS, and introduced how processes and threads are used. This chapter continues that discussion by showing you specifically how to create and manage your own processes and threads using the APIs Symbian OS provides. I'll also describe how to synchronize, and communicate between threads, using shared memory regions, semaphores, mutexes, and critical sections.

Understanding the material in this chapter is not absolutely necessary for basic Symbian OS programming, since processes and threads are handled by the system for the most part. However, at some point you may find that you need to create your own processes or threads. For example, you may want to create a server that runs as a separate process, launched by your program when needed. Or you may want to create your own threads if you are porting code from an environment that relies heavily on them. However, on Symbian OS, implementing threads in your program is generally discouraged in favor of using active objects (see section 9.2).

Understanding the details of how processes and threads function and communicate will provide you with a deeper understanding of how the various frameworks, such as active objects and the client–server pattern, operate (these are covered in Chapters 8 and 10, respectively).

Processes

A Symbian OS process is an executable that has its own data space, stack, and heap. A process is contained ...

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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Borland® Delphi™ 6 Developer's Guide

Borland® Delphi™ 6 Developer's Guide

Steve Teixeira, Xavier Pacheco
How to Develop a Great Digital Strategy

How to Develop a Great Digital Strategy

Jeanne W. Ross, Cynthia M. Beath, Ina M. Sebastian
Professional Linux® Programming

Professional Linux® Programming

Jon Masters, Richard Blum

Publisher Resources

ISBN: 9780470725702Purchase book