Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

How would I put my socket in non-blocking mode?

Answer Posted / chaitanya

Technically, fcntl(soc, F_SETFL, O_NONBLOCK) is incorrect since it clobbers all other file flags. Generally one gets away with it since the other flags (O_APPEND for example) don't really apply much to sockets. In a similarly rough vein, you would use fcntl(soc, F_SETFL, 0) to go back to blocking mode.

To do it right, use F_GETFL to get the current flags, set or clear the O_NONBLOCK flag, then use F_SETFL to set the flags.

And yes, the flag can be changed either way at will.

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Are unix sockets faster than tcp?

847


How are unix domain sockets implemented?

843


How does unix socket work?

904


What is the difference between SO_REUSEADDR and SO_REUSEPORT?

1796


What pieces of information make up a socket?

949


How is a socket created?

905


How can I tell when a socket is closed on the other end?

1343


Why do we need sockets?

820


What is a deep well socket?

917


What is af_inet in socket?

823


Is socket a hardware or software?

919


What is active unix domain sockets?

899


Can multiple sockets use the same port?

860


How do I convert a string into an internet address?

1373


What is socket address with example?

836