Non so se è una cavolata o meno , dipende anche da cosa deve fare effettivamente il
tuo programma

se usi la funzione getch() all'interno di un thread , che legga di continuo i caratteri premuti
e modifichi una variabile char globale , non risolveresti ?