Linux下C语言实现的一个多线程Socket服务器端

话说,最近开始神奇地拿C/C++做开发了。。

从最开始的时候就觉得,C/C++神马,做开发是无比蛋疼的。。

嘛,既然是工作需要,那就上吧。TAT。这次补上C/C++和.NET,这样主流开发语言就基本上都做过东西了。。哈,听起来很牛X的样子。我只是个菜鸟。。

以上跑题———-下转正题。

话说一般做C/C++的系统肯定会遇到的技术点,比如GUI,多线程,网络通讯,数据库等等。当然你非要说做单机的“火车订票系统”,那也没办法。当然实际的应用场景肯定不是这样的。

今天晚上就试着自己摸索摸索如何在Linux平台上用C语言实现一个服务器端。

大致了解下的多客户端服务器程序,要么是单或者少量线程的多路复用的非阻塞式,要么是一个客户端一个线程。当然两种方式各有相应的应用场景,不能谁打死谁。按照一般大学教科书上介绍的服务器带多客户端,大多数是后者,即来个请求,起一个线程为其服务。由此也能推断,这种适合于,数据通讯及时性强,长期连接的应用场景。这次介绍的就是多线程的Socket服务器端的示例。

废话不多说,直接上代码:

点击查看代码:socket_demo.c

大致的过程呢,可以参考这篇文章列出的服务器端部分:

http://wenku.baidu.com/view/c17f4bc78bd63186bcebbcb8.html

在OSC上,也有很好的代码实例,话说自己研究这玩意的时候没少参考:

http://www.oschina.net/code/snippet_97047_675

想凭借这点内容,了解博大精深的C/C++编程,如同管中窥豹,参考手册神马的是王道,听说有个Linux编程手册不错,可以找来看看。

研究了这半天,得出来的一个重要结论是——还是java方便。。囧。

Linux下C语言实现的一个多线程Socket服务器端》上有1条评论

评论已关闭。