进程A

  void input1(void *param1)
  {
    //获得参数param1
  }  void input2(void *param2)
  {
    //获得参数param2
  }
  
  void input3(void *param3)
  {
    //获得参数param3
  }
  
  void Do1()
  {
   处理参数队列
  }  void Do2()
  {
   处理参数队列
  }}
==================================================
进程B, 进程C 调用进程A的接口input3,input2,input1,(传入数据给进程A使用)
/////////////////////////////////////////////////////////////
请教一下:怎样设计上面的进程A中的数据?用锁来处理同步?还是用消息同步来处理?

解决方案 »

  1.   

    你如何调用进程A的接口input3,input2,input1?
      

  2.   

    建议使用Mutex、Semaphore等对象来同步资源的使用,可以跨进程使用。
    当然也可以在你要共享的内存中加一个标志来同步资源的使用。
      

  3.   

    Mutex A1,A2,A3
    A1=TRUE;
    A2=A3=FALSE;
    void input1(void *param1) 
      { 
        索取A1
        //获得参数param1 
        A1=FALSE;
        A2=TRUE;
      }   void input2(void *param2) 
      { 
        索取A2
        //获得参数param2 
        A2=FALSE;
        A3=TRUE;
      } 
      
      void input3(void *param3) 
      { 
        索取A3
        //获得参数param3 
        A3=FALSE;
        A1=TRUE;//这个看你的情况
      }