SMP Design

From AlsaProject
Revision as of 14:03, 13 November 2012 by Perex (talk | contribs) (Created page with "The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of co...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking - so the serialization should be done inside an application. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme.

If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.