Add a locking section to the coding guidelines document.
authorRussell Bryant <russell@russellbryant.com>
Wed, 2 Jul 2008 12:08:33 +0000 (12:08 +0000)
committerRussell Bryant <russell@russellbryant.com>
Wed, 2 Jul 2008 12:08:33 +0000 (12:08 +0000)
commit604b819b1c26cabc58fc5996542f8f47840515ff
tree9c4f5c42e3abf5a60c90f0efa5fc1c0cba8e12e8
parent8cd40e395092ba50113beef0b0d12a17dc87d8db
Add a locking section to the coding guidelines document.

This section covers some locking fundamentals, as well as some information on
locking as it is used in Asterisk.  It describes some of the ways that are used
and could be used to achieve deadlock avoidance.  It also demonstrates the
unfortunate conclusion that with the use of recursive locks, none of the
constructs in use today are failsafe from deadlocks.  Finally, it makes some
recommendations for new code being written.  As proper locking strategies is a
complex subject, this section still has room for expansion and improvement.

This is a result of collaboration between Luigi Rizzo and myself on the
asterisk-dev mailing list.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
doc/CODING-GUIDELINES