日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

win c语言创建线程,初学者 CWinThread 线程类

發布時間:2025/3/15 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 win c语言创建线程,初学者 CWinThread 线程类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

菜鳥 CWinThread 線程類求助

定義了這么一個線程

class?CPreview?:?public?CWinThread

{

DECLARE_DYNCREATE(CPreview)

private:

CRITICAL_SECTION?m_cs;

EdsBaseRef?FCamera?;

bool?FMirror,FYMirror,FRotate;

bool?bStop?;

void?DownLoadEvfData();

protected:

CPreview();

CPreview(EdsBaseRef?camera,bool?CreateSuspended,bool?bMirror,bool?bRotate);

virtual?~CPreview();

public:

virtual?BOOL?InitInstance();

virtual?int?ExitInstance();

virtual?int?Run();

__declspec(property(get=GetMirror,put=SetMirror))?bool?Mirror;

__declspec(property(get=GetYMirror,put=SetYMirror))?bool?YMirror;

__declspec(property(get=GetRotate,put=SetRotate))?bool?Rotate90;

protected:

afx_msg?void?OnStopView(WPARAM?wParam,LPARAM?lParam);

bool?GetMirror()

{

return?FMirror;

}

void?SetMirror(bool?bmirror)

{

FMirror?=?bmirror;

}

bool?GetRotate()

{

return?FRotate;

}

void?SetRotate(bool?brotate)

{

FRotate?=?brotate;

}

bool??GetYMirror()

{

return?FYMirror;

}

void?SetYMirror(bool?bymirror)

{

FYMirror?=?bymirror;

}

DECLARE_MESSAGE_MAP()

};

這個線程在其它類中定義了一個實例

CWinThread?*preview;

是這么創建線程的

preview?=?AfxBeginThread(RUNTIME_CLASS(CPreview),0,0,CREATE_SUSPENDED,0);

preview->m_bAutoDelete?=?true;

1.我想讓它創建時掛起,但發現如果掛起了,再preview->ResumeThread(),無法喚醒

2.在線程類中,定義了一些變量,需要外界傳遞進來,使用上述方式創建時,它執行的是該構造函數CPreview();而不是這個,CPreview(EdsBaseRef?camera,bool?CreateSuspended,bool?bMirror,bool?bRotate);如果我想傳遞初始化參數,該如何處理

3.該線程需要長時間后臺處理,下載圖像數據,再用回調的形式將數據傳遞到主界面上,是否可重寫RUN().如果可以,該怎么寫,直接寫個while(tru)么,看MSDN上說,最好不要重寫

萬分感謝!!!!

分享到:

------解決方案--------------------

我都是直接調用API的,MFC的東西一點都不懂,來幫頂一下

------解決方案--------------------

“線程可以自己掛起但不能自己恢復”

總結

以上是生活随笔為你收集整理的win c语言创建线程,初学者 CWinThread 线程类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。