Windows中OnTimer和執行緒
首先看看OnTimer的做法。
1 在類中
void CMyDialog::OnTimer(UINT nIDEvent)
{
if (nIDEvent == MY_TIMER)
{
//process something
}
CDialog::OnTimer(nIDEvent);
}
BOOL CODM_DlgShowImage::OnInitDialog()
{
SetTimer(MY_TIMER, 500, NULL);
}
2
void CMyApp::CreateDlg ()
{
if (m_pDlg)
{
m_pDlg->DestroyWindow();
delete m_pDlg;
m_pDlg = NULL;
}
m_pDlg = new CMyDialog ();
m_ pDlg ->Create(CMyDialog::IDD);
m_ pDlg ->SetContainer(&m_container);
m_ pDlg ->ShowWindow(SW_HIDE);
}
這樣做有什麼問題呢,我們先不說,然後看看用執行緒的做法。
void CMyApp::CreateDlg ()
{
if (m_pDlg)
{
m_pDlg->DestroyWindow();
delete m_pDlg;
m_pDlg = NULL;
}
m_pDlg = new CMyDialog ();
m_ pDlg ->Create(CMyDialog::IDD);
m_ pDlg ->SetContainer(&m_container);
m_ pDlg ->ShowWindow(SW_HIDE);
AfxBeginThread(ThreadProc, this);
}
UINT CMyApp::ThreadProc(void* p)
{
CMyApp * CApp = (CMyApp *)p;
while(1)
{
if ()
{
//process something;
}
else
{
break;
}
Sleep(200);
}
return 0;
}
採用執行緒的方式解決了什麼問題呢,大家可以思考一下。
轉載請註明原創連線:http://blog.csdn.net/wujunokay/article/details/44783473
相關文章
- Java中命名執行器服務執行緒和執行緒池Java執行緒
- 執行緒和執行緒池執行緒
- Java執行緒:執行緒中斷Java執行緒
- Python 中執行緒和程式Python執行緒
- 在netty3.x中存在兩種執行緒:boss執行緒和worker執行緒。Netty執行緒
- 多執行緒和多執行緒同步執行緒
- Java執行緒中斷與終止執行緒執行Java執行緒
- Android的執行緒和執行緒池Android執行緒
- 多執行緒-程式和執行緒的概述執行緒
- java執行緒之守護執行緒和使用者執行緒Java執行緒
- windows多執行緒同步--事件Windows執行緒事件
- windows多執行緒--原子操作Windows執行緒
- C#中的執行緒(三)多執行緒C#執行緒
- 多執行緒-執行緒組的概述和使用執行緒
- 多執行緒-執行緒池的概述和使用執行緒
- 執行緒安全和執行緒不安全理解執行緒
- 程式和執行緒執行緒
- 執行緒和程式執行緒
- Node.js 中的程式和執行緒Node.js執行緒
- 掌握Android中的程式和執行緒Android執行緒
- Java 併發:執行緒、執行緒池和執行器全面教程Java執行緒
- boost中asio網路庫多執行緒併發處理實現,以及asio在多執行緒模型中執行緒的排程情況和執行緒安全。執行緒模型
- python多執行緒中:如何關閉執行緒?Python執行緒
- 執行緒同步(windows平臺):事件執行緒Windows事件
- windows多執行緒同步--互斥量Windows執行緒
- java中執行緒池的生命週期與執行緒中斷Java執行緒
- 多執行緒:執行緒池理解和使用總結執行緒
- 瀏覽器多執行緒和js單執行緒瀏覽器執行緒JS
- 《Java 高階篇》七:執行緒和執行緒池Java執行緒
- 執行緒、多執行緒和執行緒池,看完這些你就能全部搞懂了執行緒
- MFC多執行緒的建立,包括工作執行緒和使用者介面執行緒執行緒
- 執行緒的中斷執行緒
- Java中的執行緒Java執行緒
- 中斷JAVA執行緒Java執行緒
- Windows10 VS2017 C++多執行緒傳參和等待執行緒結束WindowsC++執行緒
- 淺談執行緒池(中):獨立執行緒池的作用及IO執行緒池執行緒
- 多執行緒------執行緒與程式/執行緒排程/建立執行緒執行緒
- Java多執行緒中執行緒安全與鎖問題Java執行緒