음 구조적인 문제인데...

작업 Thread( task )가 있고 그 쓰레드가 갖고 있는 데이터를

GUI에서 표현해주어야 하거든

근데 데이터의 종류도 많고 많고 양도 많아...

그런데 이것들을 딜레이 없이 가져다가 GUI에 뿌리고 싶은데...

보통 동기화 오브젝트를 쓰잖아...

그런데 그렇게 하면 둘다 처리속도가 떨어질거 같아서 lock&unlock이 자주 일어나고...

그러면 GUI에서 요청이 있을때에만 쓰레드에서 가져오는 방식으로 하고 싶은데...

이것도 GUI입장에서는 약간 딜레이가 있거든...

이것마저도 없애고 싶은데...

보통 이런경우에 어떤구조로 하는게 좋을까?

----------참고로 두번째 GUI 요청이 있을때에만 처리하는 방식 ----------

==> GUI
task.add_cmd( GET_USER_TABLE, &sync_obj );
sync_obj.wait(); // 여기서 딜레이가 생긴다... 테스크의 응답을 기다려야 함
data = sync_obj.result() ;

==> TASK
loop()
{
        switch( cmd )
        {
                case GET_USER_TABLE:
                p = malloc(sizeof(...));
                memcpy(p,m_p, sizeof(...));
                sync_obj.set_result(p); // 여기가 테스크 응답...
                break;
        }
}
----------------------------------------------------------