★初心者にVisual C++を教えるスレ★ Part15

このエントリーをはてなブックマークに追加
705685
AfxBeginThread()使ってみたが、症状は変わらないわ。
一体なんなんだ?
706685: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;
}
707685:04/11/08 02:59:40
>>686
>>695
今、読み返してみたのだが描画を別スレッドにするのではなく、あくまで通信を別スレッドに
しろということなのか・・・
708デフォルトの名無しさん:04/11/08 04:08:48
コンパイルエラーにはならない?
my_pViewというのは外部変数?
それと、無限ループを抜け出す条件が無いようだけど
カキコするために省略したの?
709685:04/11/08 07:14:06
>>708
コンパイルエラーにはならないです。
my_pViewは外部変数です。
無限ループを抜け出す条件が無いですが、省略ではありません。
710デフォルトの名無しさん:04/11/08 09:23:03
もし my_pView が MFC のクラスなら
スレッドを超えてのインスタンスの使用はできないはず。
ナマのウィンドウハンドルを持つべきだね。