Previous PageTable Of Contents../index.htmlIndexNext Page


11.2. Multi-Threading and Multi-Processing

The APIs discussed in this Guide support multi-threading and multi-processing, with some restrictions on the latter. The restrictions on multi-processing are outlined below.

First, one particular channel can only be opened in one process at a time. There can, however, be multiple processes accessing different sets of channels. In other words, ensure that each process is provided with a unique set of devices to manipulate.

Second, if a channel was opened in process A and then closed, process B is then allowed to open the same channel. However, since closing a channel is an asynchronous operation in R4 on DM3, there is a small gap between the time when the xx_close( ) function returns in process A and the time when process B is allowed to open the same channel. If process B opens the channel too early, things could go wrong. For this reason, this type of sequence should be avoided.

Third, there is a restriction on use of firmware tones in case of multi-processing in the Voice API: Multiple processes that define tones (GTD or GTG) do not share tone definitions in the firmware. That is, if you define tone A in process #1 for channel dxxxB1C1 on DM3 board X and the same tone A in process #2 for channel dxxxB1C1 on the same DM3 board X, two firmware tones are consumed on board X. In other words, the same tone defined from different processes is not shared in the firmware; hence this limits the number of tones that can be created overall.

Fourth, with the DCB API, multiple processes cannot access the same conference.


Previous PageTable Of ContentsTop Of PageIndexNext Page

Click here to contact Dialogic Customer Engineering

Copyright 2002, Intel Corporation
All rights reserved
This page generated February, 2002