_beginthreadex()
を使用してスレッドを開始し、実行するにはどうすればよいvoid myFunction(wchar_t *param);
ですか? 私はこれを使用しようとします:
_beginthread(NULL, 0, myFunction, L"someParam", 0, &ThreadID);
しかし、コンパイルエラーがあります:
エラー C2664: ' beginthreadex': パラメーター 3 を 'void ( _cdecl *)(wchar_t *)' から 'unsigned int (__stdcall *)(void *)' に変換できません。
このエラーを解決するにはどうすればよいですか? できそうです_beginthread((void(*)(void*))myFunction, 0 , (void *)L"someParam");
。しかし、_beginthreadex()
これらのキャストは機能していないようです。私は何をする必要がありますか?このコードは何も出力しません。どうしたの?
unsigned int __stdcall myFunction( void *someParam )
{
printf("Hello world!");
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
_beginthreadex(NULL, 0, myFunction, L"param", 0, NULL);
return 0;
}