Hi Zhen, 2012/7/24 Zhen Fu <fuzh at marvell.com>: > Hi all developer, > > > > I want to know about how to communication one module with another module. Is > it use asyncmg? Thank you! I'm not the expert here, but here's my two cents. :) In theory, two modules should not communicate directly with each other. For a module, the only thing it should care about is the core, and it should communicate with the core, handling the messages from the core etc. As you might know already, pulseaudio takes the thread model, for most of the modules, they would reside in a separate thread, e.g. ALSA. Communicating directly with two methods could be a mess, and even worse, one module is totally unaware when the another module is loaded or not. So the current way, in my humble opinion, is to use the core as a bridge to direct the communication between two modules. That said, the intrinsic question is why you should do this at your first place? :) Maybe there's a chance to skip this ugliness in your design. Thanks!