Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/02/2012, 03:37
Olbapk
 
Fecha de Ingreso: octubre-2008
Mensajes: 184
Antigüedad: 15 años, 6 meses
Puntos: 1
WNOHANG|WUNTRACED vs WNOHANG||WUNTRACED

Buenas!estaba tenia que entregar una práctica a las 9 de la mañana sobre una shell en linux, despues de pasar toda el cuatrimestre me quede toda la noche y lo conseguí xDD, ya está enviada y aprobada. Lo único que me extrañó la atención es que hice un manejador de señales de la shell, para controlar si un proceso en segundo plano intenta leer de terminal se suspendiera, esto pensé en arreglaro poniendo pidh=waitpid(ptr->pid,&status,WNOHANG||WUNTRACED); pero accidentalmente puse pidh=waitpid(ptr->pid,&status,WNOHANG|WUNTRACED); (eliminé una barra del or logico, ||)
el caso es que me funciona, y cuando me doy cuenta del fallo lo arreglo poniendo ||, pero ya no funciona , asi que lo dejé como estaba y la envié XDD.

La cosa es que ya por curiosidad lo intenté sacar (después de haberla enviado claro) y no se porque, la shell la hice en ubuntu con c y posix.

A ver si alguien me saca la duda, saludos a todos!