我现在有一个函数func,作用是将输入的char *str拷贝到发送缓冲区m_szBuf中,然后通过事件通知线程C发送缓冲区中的数据。 现在我在线程A和线程B中分别调用函数func来将str拷贝到缓冲区,那么就可能会出现数据互斥问题了,比如线程A将数据拷贝到m_szBuf中后,线程C还没来得及发送,该缓冲区又被线程B的调用给覆盖了。我想过用一个标志量,但是会出现死锁,或者采用在函数func中拷贝完后等待事件,由线程C完成发送后通知该事件,但是这样的话会让线程A或者线程B阻塞等待了。
     有没有什么比较好的同步互斥方法来实现此功能呢?或者说不采用这种结构来实现该功能,有其他更好的方法?