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?



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

Answer / 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

More Unix Socket Programming Interview Questions

Why do I keep getting EINTR from the socket calls?

1 Answers  


How many sockets can a port have?

0 Answers  


How do I send [this] over a socket?

1 Answers  


How often should I re-transmit un-acknowleged messages?

1 Answers  


Why do we need socket programming?

0 Answers  


What exactly does SO_LINGER do?

1 Answers  


of the socket? Does doing a connect() call affect the receive behaviour?

1 Answers  


How many sockets can a cpu have?

0 Answers  


What is a deep well socket?

0 Answers  


What is a socket set used for?

0 Answers  


What is with the second parameter in bind()?

1 Answers  


How do I get the port number for a given service?

1 Answers  


Categories