VadiMGP
|
Posted: Mon Mar 09, 2009 03:27 Post subject: |
|
|
Worros wrote: | Где прочитать, как это делается? Я не умею. | Да ничего читать не надо. Просто дробишь код. Вместо Code: | MoveWindow(gp->DataForThread.ListerWin,20,20,gp->DataForThread.naturewidth,gp->DataForThread.natureheight,true); | пишешь
Code: | HWND hLWnd=gp->DataForThread.ListerWin;
int neww=gp->DataForThread.naturewidth;
int newh=gp->DataForThread.natureheight;
MoveWindow(hLWnd,20,20,neww,newh,true); | И смотришь кто тормозит. Если до вызова MoveWindow, то возможно есть проблема синхронизации доступа к общим переменным из двух разных потоков. Если тормозит сам вызов MoveWindow, то возможно возникает ситуация, когда каждый из двух потоков чего-то ждет. Worros wrote: | И еще, я припоминаю рекомендацию не посылать из потока SendMessage рабочему окну, | Совершенно верно, не рекомендуется. И именно потому что легко может возникнуть клинч. Можно попробовать послать PostThreadMessage главному потоку и уже там делать MoveWindow.
Worros wrote: | IDE удобнее, чем у VC6 , | Конечно удобнее, кто бы спорил. Но глючный. Я же спрашивал, почему ты не ставишь более качественный IDE - VS2008. |
|