Hi rong, It is very useful message for me. I am doing a audio server, so I refer the pulseaudio system. -- Best Regards, Zhen Fu -----Original Message----- From: rong deng [mailto:dzrongg@xxxxxxxxx] Sent: Wednesday, July 25, 2012 11:21 PM To: General PulseAudio Discussion Cc: Zhen Fu Subject: Re: I want to know about how to communication one module with another module 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!