Hi Sai, You will need to run ev_loop after you've set everything up. That is right after you call ev_io_start.
-- Harm On Thu, Oct 13, 2011 at 08:12, sai koushik <[email protected]> wrote: > Hi , > i tried to crate a socket client using libev , and this client has to > listen for data from the server. > and i tried as below > ev_io stdin_watcher; > .... > sock_fd = socket(PF_UNIX, SOCK_STREAM, 0); > memset(&addr, 0, sizeof(addr)); > addr.sun_family = AF_UNIX; > strcpy(addr.sun_path, ifname); > err = connect(sock_fd, (struct sockaddr *) &addr, sizeof(addr)); > int flags=0; > fcntl(sock_fd, F_SETFL, flags | O_NONBLOCK); > ev_io_init(&stdin_watcher,stdin_cb, sock_fd, EV_READ); > ev_io_start (EV_DEFAULT_UC_ &stdin_watcher); > .... > and callback is > static void stdin_cb (EV_P_ ev_io *w, int revents) > { > printf("\n callback \n"); > } > > issue is when i tried to run client program callback is getting invoked > forever and it is going into infinte loop. > i didn`t used ev_loop. > Is above code is in proper way of reading data from from server? > any help? > Thanks > > _______________________________________________ > libev mailing list > [email protected] > http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev > _______________________________________________ libev mailing list [email protected] http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev
