• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Five Reasons Why Synchronous Networking Is Bad
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Five Reasons Why Synchronous Networking Is Bad


  • Subject: Re: Five Reasons Why Synchronous Networking Is Bad
  • From: Peter Sichel <email@hidden>
  • Date: Thu, 5 Mar 2009 10:42:30 -0500

Great write-up, thanks!

On Mar 5, 2009, at 7:32 AM, Quinn wrote:

o asynchronous -- For example, you can schedule an NSStream on a runloop and have it call you when data arrives.

Of course scheduling a CFSocket on a runloop must also use a thread to work around the current Sockets API, but this single shared thread is carefully optimized and integrated with Mac OS X by a team of specialists. Once these issues are abstracted out of developers programs, the system software is free to improve the underlying mechanism transparently.


So part of the argument here is that 3rd party developers should avoid select() and similar mechanisms when possible since higher level CFSocket based abstractions are more robust and efficient. The larger implication is that a generation of network software developers who grew up on UNIX BSD APIs (like me) will need to be coaxed into rethinking their network programming abstractions.

- Peter

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Macnetworkprog mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Five Reasons Why Synchronous Networking Is Bad
      • From: email@hidden
    • Re: Five Reasons Why Synchronous Networking Is Bad
      • From: Quinn <email@hidden>
References: 
 >Five Reasons Why Synchronous Networking Is Bad (From: Quinn <email@hidden>)

  • Prev by Date: Re: How to lookup error code such as CFStreamError?
  • Next by Date: Re: Five Reasons Why Synchronous Networking Is Bad
  • Previous by thread: Five Reasons Why Synchronous Networking Is Bad
  • Next by thread: Re: Five Reasons Why Synchronous Networking Is Bad
  • Index(es):
    • Date
    • Thread