int clntSock = ((struct ThreadArgs *)threadArgs)->clntSock; free(threadArgs); HandleTCPClient(clntSock); return NULL; }
3)运行结果 首先编译链接完成后产生serv和 cli两个程序,编译链接服务器和客户端程序的指令请大家参照前面的案例给出。完成编译链接后先启动服务器程序serv,如图3所示,然后再运行客户端程序,如图4所示。服务器打印子进程ID,客户端收到服务器返回的信息。可以同时运行多个客户端程序。建议客户端和服务器运行于不同的物理机器上。
图3、服务器运行界面
图4、客户端运行界面
3、思考题
1)请使用多线程实现服务器和客户端之间不受发送接收顺序约束的“聊天”。 2)简要描述父线程与子线程之间的关系。
三、小结
本次实验使我们熟悉Linux线程的一些基本概念以及多进程程序与多线程程序的区别,熟悉了如何创建线程,熟悉了函数pthread_create的用法以及多线程的特点。特别要注意非标准库函数的编译链接方法。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库实验五、多线程并发服务器编程(3)在线全文阅读。
相关推荐: