关于2个线程同步的问题,一个调用另一个
我有2个线程在工作,一个线程调用SendAndReceive()函数,这个函数会调用第二个线程,
我希望第二个线程执行完成之前让第一个线程阻塞,请问下如何实现,关键是第二个线程完成了如何让第一个线程知道呢,谢谢
bool MeetingControlDlg::SendAndReceive()
{
m_SerialPort.WriteToPort(pcmd->command, pcmd->len);
return true;
}
void CSerialPort::WriteToPort(unsigned char* buf,int len)
{
assert(m_hComm != 0);
memset(m_szWriteBuffer, 0, sizeof(m_szWriteBuffer));
for(int i=0;i<len;i++)
{
m_szWriteBuffer[i]=buf[i];
}
m_WriteLen = len;//保存发送字节数
// set event for write
SetEvent(m_hWriteEvent);
}