hola amigos estoy realizando un programa en VC++, pero me he
encuantrado con un problema, empezemos primero he definido 2 botones
uno de "Empezar" y  Otro de "Detener", el primero me realiza o llama a
una funcion como esta
Dlg::OnEmpezar
{
    operacion=0;
    contador=0;
    do{
          cout<<contador<<endl;
          contador++;
       }while(operacion==0);
}
bueno si se dan cuenta en solo un bucle infinito, que no terminara
nunca y yo quiero realizar una interrupcion de este bucle mediante el
boton "Detener" que modifique la variable global 'operacion=1'
Dlg::OnDetener
{
    operacion=1;
}
intenente realizar eso, primero hice click en el boton "Empezar" y
realizo la funcion normal, pero cuando quise hacer click en el boton
"Detener" no me dejaba, parecia que se colgaba o algo asi.. pude
deducir que el sistema solo le daba prioridad a pa funcion que
realizaba y no dejaba hacer otra cosa hastaa que no terminara el bucle
bueno amigos como soluciono este problema...