[reSIProcate] Making DUM Thread-Safe
Matthias Moetje
moetje at terasens.com
Sat Jul 19 17:28:16 CDT 2008
Hi,
although our application calls dum functions from multiple threads we haven't run into any problems yet (I don't know why) apart from some crashes when shutting down...
Nevertheless I want to get I want to get rid of any possible concurrency problems. The results of my recent assessments are:
· dum callbacks into my application are not an issue since it is already well protected
· Many dum functions do not need any modifications because no common resources are used (e.g. MakeResponse, makeRegistration, makeNewSession etc.)
· Some dum functions pass messages directly to the stack. No modification is needed because the communication between dum and the stack is already thread safe
· Some DialogUseManager functions need a mutex to avoid concurrent access
· The DumThread class's Thread() function would need to be modified to use this mutex
So my questions are:
Are these assessments correct?
Which are the DialogUseManager functions that need to be modified?
Would it be sufficient to make modifications to DialogUseManager functions or would other classes need modification, too?
Would there be a general interest to have these things integrated into dum (single-threaded apps wouldn't be affected anyway)?
Or would it be better to create a layer above dum (class inherited from dum), would that be possible at all?
Thanks for any hints!
Best regards,
Freundliche Grüße,
Matthias Moetje
TERASENS GmbH
Augustenstraße 24
80333 Munich
GERMANY
Phone:
Fax:
e-mail:
Web:
+49.89.143370-0
+49.89.143370-22
info at terasens.com <mailto:info at terasens.com>
www.terasens.com <http://www.terasens.com/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20080720/854c031f/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.gif
Type: image/gif
Size: 3836 bytes
Desc: image001.gif
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20080720/854c031f/attachment.gif>
More information about the resiprocate-devel
mailing list