2012-01-19 4 views
0

Я пытаюсь использовать MFC для создания инструмента. Основное задание этого инструмента - сортировка данных. Ну, я обнаружил, что когда инструмент сортирует, так как есть только основной поток; поэтому при выполнении сортировки никакие диалоговые окна не могут быть перемещены или нажаты. Следовательно, я создал еще один поток для работы сортировки и отлично работает.Главный поток MFC, чтобы подождать, пока закончится другой поток

Но есть еще одна проблема после того, как я использовал поток. Я не делаю основной поток, чтобы ждать сортировочного потока. Я хочу что-то сделать после сортировки потока, но прямо сейчас основной поток просто переходит к следующим процедурам, не дожидаясь сортировки потока, чтобы завершить свою работу.

Вот фрагмент кода

AfxBeginThread(processfiles, tVals) // A thread do its work. 

// below I want to do something with the result I got from the thread above. 
//But main thread just do its work separately without waiting for the thread to finish its work. 

.

, пожалуйста, помогите спасибо !!

ответ

2

Так напишите код, чтобы сделать это. Вызовите диалоговое окно. Укажите, что происходит сортировка. Делай что хочешь. Попросите другой поток отправить свой поток сигнал, когда это будет сделано, скажем, отправив вам сообщение с PostMessage.

+0

спасибо, но я не знаю, как это сделать .... нужно немного больше помочь. – user1047092

+0

С какой частью вам нужна помощь? Вы знаете, как передать поток сообщение Windows? Вы знаете, как получить сообщение Windows? –

+0

Я хочу знать, как поток отправить сообщение в основной поток, чтобы ждать. если вы можете показать мне некоторые коды, которые были бы замечательными :) – user1047092

Смежные вопросы