• Martes 30 de Abril de 2024, 07:01

Autor Tema:  Invocar más de una función al mismo tiempo (paralelamente)  (Leído 1205 veces)

hIUGc

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Invocar más de una función al mismo tiempo (paralelamente)
« en: Lunes 5 de Abril de 2010, 07:54 »
0
:comp: Hola!

Soy mas o menos nuevo en la programación en C y quisiera externarles una duda que tengo:

Estoy programando un sencillo juego en c con colas donde una letra generada aleatoriamente va callendo y el usuario debe teclear dicha letra y luego de 4 segundos si el usuario no la ha tecleado comienza a caer una segunda letra en la pantalla (en la consola) y así sucesivamente para un ciclo de diez letras y debe teclearlas todas antes de que lleguen al fondo (coordenada 25 en y de la consola)

Tengo el grave problema (creo yo) de que para lograr el efecto de que la primera letra caiga hasta que llegue al fondo o el usuario teclee algo y mientras también despues de 4 segundos empezar a dejar caer la segunda y seguir dejando caer la primera y estar monitoreando el teclado NECESITO HACER LA INVOCACIÓN DE FUNCIONES DE MANERA PARALELA, ES DECIR AL MISMO TIEMPO

La solución que me imagino es tener en la función principal un while(!kbhit()) e ir llamando a una función recursivamente cada 4 segundos que se llame caer() la cual haga el dichoso efecto de dejar caer las letras pero necesito que no se detenga la función en curso para llamarse recursivamente

Espero me de a entender, lo que necesito es una manera de invocar (ejecutar) funciones de forma paralela

SE LOS AGRADECERÉ ETERNAMENTE SI ME AYUDAN


GRACIAS!!!!!!!!

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Invocar más de una función al mismo tiempo (paralelamente)
« Respuesta #1 en: Lunes 5 de Abril de 2010, 10:16 »
0
Para eso podes usar hilos (threads).

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.