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

system choose one for me on the connect() call? Should I bind() a port number in my client program, or let the?

0 Answers  


How does a socket work?

0 Answers  


What is with the second parameter in bind()?

1 Answers  


When should I use shutdown()?

1 Answers   Wipro,


How can I find the full hostname (FQDN) of the system I am running on?

1 Answers  


How many sockets can a port have?

0 Answers  


How can I set the timeout for the connect() system call?

0 Answers  


Is tcp or unix socket faster?

0 Answers  


How do Sockets Work?

1 Answers  


What is socket programming in java?

0 Answers  


Explain the TIME_WAIT state.

1 Answers  


How many socket connections can a server handle?

0 Answers  


Categories