当我的Win32应用程序启动时,LoadDB()
应该执行,它需要至少10秒或20秒。在哪里执行LoadDB()
,作为后台加载任务,为了防止GUI窗口无响应?后台作业启动一个Windows GUI应用程序
是否有可能做到这一点,但无需创建一个单独的thread
? (这看起来很复杂,我想避免这种情况)。
注:如果我这样做是在主消息循环:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CREATE:
LoadDB();
...
的图形用户界面将是不响应。
“这看起来很复杂” - 做复杂的事情很复杂。 –
产生一个线程,并把你的例程。 – Ron
@NeilButterworth我可以做*如果需要*,但我想说“没有其他方法吗?”。 – Basj