Código
/* * función base de los consumidores * - cada consumidor va volcando línea a línea el contenido del buffer * en el fichero cuyo nombre se le pasa como parámetro */ void *consumidor(void *arg) { int fin = 0; char *s = arg, *b; pthread_t id; FILE *f; if (f == NULL) { } id = pthread_self(); while(fin != 1) { if (buf_vacio(buf)) { pthread_cond_wait(&cond_prod, &mtx); } else if (buf_vacio(buf) && terminar == 1) { fin = 1; } else { b = buf_quitar(buf); pthread_cond_wait(&cond_prod, &mtx); } } return (void *) 1; }