임베디드 프로그래밍  

         
전체 기타 | WinCE | Delphi | VisualC | ARM | Media | SE | 마리오네트 | Java | wdm | JTAG | 영상처리 | 인증 | 질문/답변 | H/W | 알고리즘 | Platform | .net | VB | PPC | Network | android | QT | WWW | Linux |
Thread 와 List 를 이용한 Queue 로 버퍼링 구현 예제
하창호04-22 16:05 | HIT : 3,702
// init
// m_hThread = NULL;
// m_bThreadRun = FALSE;
// m_sSignalList.RemoveAll();

/*
        typedef CList<CConfigData, CConfigData&> CSignalList;

class CMyUtilDlg
{
...
public:
        HANDLE m_hThread;
        BOOL m_bThreadRun;
        CSignalList m_sSignalList;
        void StartThread();
        void EndThread();
        static DWORD WINAPI ThreadFunction(LPVOID lpThreadParameter);
        void OnThreadWhile();
...
}
*/

void CMyUtilDlg::StartThread()
{
        if(m_hThread != NULL)
        {
                return;
        }

        m_bThreadRun = TRUE;
        ThreadControl::CreateThreadFunction(m_hThread, ThreadFunction, this);
}

void CMyUtilDlg::EndThread()
{
        if(m_hThread == NULL)
        {
                return;
        }

        m_bThreadRun = FALSE;
        ThreadControl::DestroyThreadFunction(m_hThread);
}

DWORD WINAPI CMyUtilDlg::ThreadFunction(LPVOID lpThreadParameter)
{
        if(lpThreadParameter == NULL)
        {
                return 0;
        }

        CMyUtilDlg* pSender = (CMyUtilDlg*)lpThreadParameter;
        while(pSender->m_bThreadRun)
        {
                pSender->OnThreadWhile();
                Sleep(1);
        }

        return 0;
}

void CMyUtilDlg::OnThreadWhile()
{
        if(m_sSignalList.GetCount() <= 0)
        {
                return;
        }

        POSITION pos = m_sSignalList.GetHeadPosition();
        CConfigData sSignalData = (CConfigData)m_sSignalList.GetAt(m_sSignalList.GetHeadPosition());

        // 처리

        m_sSignalList.RemoveAt(m_sSignalList.GetHeadPosition());
}


197  VisualC :: ODBC 이용 EXCEL 사용시 데이터 입력 주의    하창호 2009·08·07 3667
196  VisualC :: Office Excel 2007 SQL에 넣기 mssql    하창호 2009·08·06 8317
195  VisualC :: 내부적으로 쓰레드를 사용하는 COM 객체를 쓰레드에서 ...    하창호 2009·07·18 4155
194  VisualC :: CDBVariant 의 m_pstring Exception 방...    하창호 2009·07·16 4392
193  VisualC :: CEdit 를 이용한 채팅창 처럼 자동 스크롤 되는 로그...    하창호 2009·05·11 6662
192  VisualC :: ATL COM 쉽게 레지스트리 등록 방법    하창호 2009·04·29 3700
191  VisualC :: OLE Automation Event 사용예제 대신사이보스...    하창호 2009·04·28 7322
190  VisualC :: OLE Automation classes 사용예제    하창호 2009·04·27 6894
189  VisualC :: 소스코드에 DLL 위치 추가하는 방법    하창호 2009·04·27 6321
188  VisualC :: Linker Tools Error LNK2001 에러에 대한 ...    하창호 2009·04·27 4527
187  VisualC :: Capture 하기 예제 캡춰시 상위 화면 보인후 캡춰하...    하창호 2009·04·24 3961
186  VisualC :: DIBAPI 사용시 Bitmap 이미지 크기와 JPEG 이미...    하창호 2009·04·23 4868
185  VisualC :: DIB API 를 이용한 Bitmap 을 jpeg 로 저장하...    하창호 2009·04·22 5422
 VisualC :: Thread 와 List 를 이용한 Queue 로 버퍼링 ...    하창호 2009·04·22 3702
183  VisualC :: ClickWindow 예제    하창호 2009·04·21 3698
182  VisualC :: 윈도우 이름을 기준으로 하부 윈도우를 찾는 예제    하창호 2009·04·21 4097
181  VisualC :: MAPI 를 이용한 메일 보내기 Sendmail    하창호 2009·04·20 5512
180  VisualC :: 부모 윈도우에서 자식 윈도우 위치로 윈도운 핸들 구하기  …1  하창호 2009·04·16 7790
179  VisualC :: Excel DDE 제어    하창호 2009·04·13 4163
178  VisualC :: 시간을 배열의 Index 로 서로간 변환 하는 함수 최소...    하창호 2009·04·03 3555
177  VisualC :: mysql odbc connection string    하창호 2009·03·26 5785
176  VisualC :: CDBException::m_strStateNativeOrigi...  …1  하창호 2009·03·24 4100
175  VisualC :: Microsoft Excel data type ODBC data...  …1  하창호 2009·03·11 3565
174  VisualC :: CRecordset.GetFieldValue 사용시 CDBVar...    하창호 2009·03·10 4594
173  VisualC :: ini 사용법    하창호 2009·03·09 4350
172  VisualC :: ODBC 이용 DSN Connect String 구하기 예제  …1  하창호 2009·01·21 4996
171  VisualC :: EXCEL ODBC/OLE DB/ADO 사용    하창호 2009·01·21 7437
170  VisualC :: DSN 연결 문자열 형식  …2  하창호 2009·01·21 3828
169  VisualC :: VC DB 사용시 ADO 보다는 ODBC 나 OLE DB 사용...    하창호 2009·01·21 3272
168  VisualC :: ANSI SQL 데이터 형식을 C++ 데이터 형식으로 매...    하창호 2009·01·21 5694
167  VisualC :: CDatabase 클래스 사용해서 Excel 파일 만들고 ...    하창호 2009·01·20 4744
166  VisualC :: MFC ODBC database classe 를 이용한 Exce...  …1  하창호 2009·01·20 6522
165  VisualC :: Excel XLS 파일 ODBC 제어를 위한 DSN 만들기 ...  …1  하창호 2009·01·20 4145
164  VisualC :: Excel 엑셀 관련 예제 몇가지    하창호 2009·01·14 5406
163  VisualC :: URL 에 해당하는 파일 다운로드 하는 예제    하창호 2009·01·14 3555
162  VisualC :: CEdit 커서이동 자동 스크롤  …1  하창호 2009·01·09 7523
161  VisualC :: DC 에 써진 Text 길이 알아내기    하창호 2009·01·08 3297
160  VisualC :: 동적 생성한 윈도우 메세지 제어하기    하창호 2009·01·07 3620
159  VisualC :: 컨트롤의 색깔 바꾸기 예제    하창호 2009·01·06 3539
158  VisualC :: SetWindowStyle 만드는 함수 예제    하창호 2009·01·05 6115
157  VisualC :: 템플릿 리스트 CList 사용하는 방법  …1  하창호 2008·12·30 4029
156  VisualC :: TransparentBlt 투명 그리기 함수    하창호 2008·12·17 5463
155  VisualC :: 쉘함수로 실행파일 실행 시키기 예제    하창호 2008·12·05 3461
154  VisualC :: 실행되고 있는 프로세스 찾기 예제    하창호 2008·12·05 6197
153  VisualC :: 프로세스 강제 죽이기 예제  …1  하창호 2008·12·05 5068
152  VisualC :: 테스크바 아이콘 지우기 예제    하창호 2008·12·05 3269
151  VisualC :: VC 확장 DLL 을 이용한 데이터 공유 방법  …4  하창호 2008·11·28 3857
150  VisualC :: SYSTEMTIME Milliseconds 동작안됨  …1  하창호 2008·11·17 6329
149  VisualC :: time_t 의 최소 변화가능 값 = 1초    하창호 2008·11·17 3445
148  VisualC :: C++ STL (Standard Template Library)...    하창호 2008·11·13 2934
147  VisualC :: CArchive 를 이용한 Serialize 와 Deseriali...    하창호 2008·11·05 4660
146  VisualC :: Visual studio 2008 Express Free 설치...    하창호 2008·10·20 2870
145  VisualC :: DoubleToStr 예제 UNICODE 지원됨    하창호 2008·10·14 2843
144  VisualC :: VC 2008 에서 제곱함수 pow 사용시 주의    하창호 2008·10·14 4380
143  VisualC :: 간단한 Text Encode / Decode 규칙    하창호 2008·10·06 2860
142  VisualC :: IntToStr, StrToInt  …4  하창호 2008·09·30 5809
141  VisualC :: StrToInt    하창호 2008·09·29 2962
140  VisualC :: 트레이 아이콘의 강제로 죽인 프로그램 아이콘 갱신하기    하창호 2008·09·19 5290
139  VisualC :: 실행파일의 파라메터 얻어오기    하창호 2008·09·10 2939
138  VisualC :: DLL 에 포함된 함수리스트를 보고 싶을 때  …1  하창호 2008·08·05 3780
137  VisualC :: 매번 생각안나는 OnActivate    하창호 2008·07·29 2778
136  VisualC :: extension DLLs 사용시 쉽게 Class 를 DLL 화...    하창호 2008·07·28 3578
135  VisualC :: Microsoft Image Lib 를 이용해 Thumbnail...    하창호 2008·07·25 4835
134  VisualC :: CTime 으로 해당달의 시작요일과 해당달의 일수를 구...  …1  하창호 2008·07·07 5075
133  VisualC :: CListCtrl 사용하기  …3  하창호 2008·07·03 3491
132  VisualC :: ComboBox 사용하기  …1  하창호 2008·07·03 3489
131  VisualC :: 문자열 처리함수  …2  하창호 2008·07·02 3009
130  VisualC :: 파일의 수정날짜 바꾸기    하창호 2008·07·01 4097
129  VisualC :: MFC App에서 __argc, __argv 를 가져오는법    하창호 2008·07·01 3780
128  VisualC :: LNK2005, LNK4098, LNK1169 에러가 날 경...    하창호 2008·06·11 3909
1 [2][3]
   
Copyright 1999-2018 Zeroboard / skin by GGAMBO
....