★初心者にVisual C++を教えるスレ★ Part15
705 :
685:
AfxBeginThread()使ってみたが、症状は変わらないわ。
一体なんなんだ?
706 :
685:04/11/08 02:46:01
こんな感じで、マルチスレッドな感じに組んだつもりなのですが、ダメです。
int CHctestwin2View::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: この位置に固有の作成用コードを追加してください
AfxBeginThread(Thread_byoga, this);
return 0;
}
UINT Thread_byoga(LPVOID pParm)
{
while(TRUE){
Sleep(1000);
my_pView->InvalidateRect(NULL);
my_pView->UpdateWindow();
}
return 0;
}
707 :
685:04/11/08 02:59:40
>>686 >>695 今、読み返してみたのだが描画を別スレッドにするのではなく、あくまで通信を別スレッドに
しろということなのか・・・
コンパイルエラーにはならない?
my_pViewというのは外部変数?
それと、無限ループを抜け出す条件が無いようだけど
カキコするために省略したの?
709 :
685:04/11/08 07:14:06
>>708 コンパイルエラーにはならないです。
my_pViewは外部変数です。
無限ループを抜け出す条件が無いですが、省略ではありません。
もし my_pView が MFC のクラスなら
スレッドを超えてのインスタンスの使用はできないはず。
ナマのウィンドウハンドルを持つべきだね。