디자인 문제가 있습니다. SENDING 및 RECEIVING에 대해 별도의 클래스를 정의하는 것이 더 낫습니다. 아니면 하나의 Thread 클래스를 정의하는 것이 더 나은가? 뮤텍스에 의해 잠길 수있는 큐를 공유하는 것이 더 쉽기 때문에 나는 하나의 Thread 클래스에 대한 아이디어를 좋아한다.설계 스레드 등급
디자인 옵션 # 1 (별도) :
mySendThread = new SendThread(); // Have thread properties and separate members
myRcvThread = new RcvThread(); // Have thread properties and separate members
디자인 옵션 # 2 (마스터) :
마스터 스레드 - I가 통신하는 스레드를 설계 한
Execute()
{
if (threadType == RCV_THREAD)
{
globalVar = new MasterThread(serialPortHandle);
}
while (!Terminated)
{
if (threadType == RCV_THREAD)
{
if(globalVar)
{
// do work
}
}
if (threadType == SND_THREAD)
{
tCountSnd = GetTickCount()/SND_THREAD_DELAY;
if (tCountSnd != tCountSnd2) {
tCountSnd2 = tCountSnd;
if (globalVar) {
// do sending work
}
}
}
}
}
부스트와 같은 기존 스레드 클래스의 문제점은 무엇입니까? – jalf
아무 것도. 스레드 클래스를 설계하지 오전 .. 구현을 설계 오전 –