bool filtrarListas(t_list* listaPrincipal,t_list* listaFiltrada){ /*struct timeval tiempoEspera; tiempoEspera.tv_sec = 1; tiempoEspera.tv_usec = 250000;*/ fd_set estructuraFiltro; limpiarLista(listaFiltrada); int resultado,maximoSocket = mayorDeLista(listaPrincipal); do{ FD_ZERO(&estructuraFiltro); estructuraFiltro = crearEstructuraDesdeLista(listaPrincipal); resultado = select(maximoSocket+1,&estructuraFiltro,NULL,NULL,NULL); }while(resultado<=0); listaFiltrada = crearListaDesdeEstructura(estructuraFiltro,maximoSocket); int* socketServidor = list_get(listaPrincipal,0); return perteneceALista(listaFiltrada,*socketServidor); }
int main(int argc,char **argv) { lista *nueva = inicializarLista(); mostrarLista(nueva); nueva = agregarLista(nueva,"medio",3); mostrarLista(nueva); nueva = agregarLista(nueva,"hola",1); mostrarLista(nueva); nueva = agregarLista(nueva,"chao",6); mostrarLista(nueva); limpiarLista(nueva); }