例:
http://www.thegeekstuff.com/2011/12/c-socket-programming/
http://tldp.org/LDP/LG/issue74/tougher.html#3.2
是否有更有效的方法来构造服务器端代码,使其不涉及无限循环,或以一种占用较少系统资源的方式编写无限循环?
解决方法 这些例子中的无限循环已经很有效.对accept()的调用是一个阻塞调用:在客户端连接到服务器之前,函数不会返回.调用accept()函数的线程的代码执行暂停,并且不占用任何处理能力.将accept()视为对join()的调用,或者像对互斥锁/ lock / semaphore的等待一样.
当然,还有许多其他方法来处理传入连接,但那些其他方式处理accept()的阻塞性质.此功能很难取消,因此存在非阻塞替代方案,允许服务器在等待传入连接时执行其他 *** 作.一个这样的选择是使用select().其他替代方案的可移植性较差,因为它们涉及低级 *** 作系统调用,通过回调函数,事件或 *** 作系统处理的任何其他异步机制来发出连接信号……
总结以上是内存溢出为你收集整理的c – 处理客户端连接的最有效方法(套接字编程)全部内容,希望文章能够帮你解决c – 处理客户端连接的最有效方法(套接字编程)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)