Este es mi primer post, y necesito ayuda porque estoy haciendo un programa tiene mucho consumo de CPU.
Se donde esta el problema, pero no se solucionarlo.
Antes de describir el programa aclarar que estoy trabajando en un raspberry pi b.
Bien vamos a la descripción mi programa:
Nada mas empezar el programa inicializo todas las variables.
una vez terminada la inicialización creo un proceso el cual abre una un socket y quedo a la espera de que me envíen una petición de datos nuevos. [Aquí esta el problema, en este punto para detener el proceso, solo se me ocurre hacer un while variable != 2, si coloco sleeps para que compruebe cada cierto tiempo si tenemos petición de datos nuevos, mejora el consumo, pero necesito que al recibir dicha petición comience a trabajar y consuma lo minimo posible]
Al recibir dicha petición salgo del bucle y el proceso que hace la petición, entra en un bucle igual.
Código
do { delayMidrodeconds(50); }while(bufr!=2)
Pero esto hace el consumo demasiado alto hasta el punto de bloquear la raspberry
he leído sobre el wait, para intentar sincronizar los procesos, pero solo veo que sirve para detener un proceso hasta que termina otro.
Espero que haberme explicado con claridad, he resumido lo que hace el programa global porque es bastante mas complejo, y me centre en el problema, creo que queda claro.
Muchas gracias por todo de antemano.