私のWin32アプリケーションが起動するときには、LoadDB()
が実行され、少なくとも10秒または20秒かかる。 GUIウィンドウが応答しないようにするには、LoadDB()
をバックグラウンド読み込みタスクとしてのどこで実行するのですか?Windows GUIアプリケーションを起動する際のバックグラウンドジョブ
別途作成する必要はありませんが、thread
? (これは複雑に見え、私はそれを避けたかった)。
注:私は、メインメッセージループでそれを行う場合:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CREATE:
LoadDB();
...
GUIが非応答になります。
"これは複雑に見えます" - 複雑なことは複雑です。 –
スレッドを生成し、そこにルーチンを配置します。 – Ron
@NeilButterworth必要に応じて*私はそれをするのは大丈夫ですが、私は "別の方法はありませんか"と言いたいと思いました。 – Basj