本来这次作业我是想搞个图形界面的,然而现实情况是我把题意理解错了,于是乎失去了最初的兴致,还是把程序变成了功能正确但是“UI”不友好的console了,但是不管怎么样,前期的图形界面的开发还是很有收获 ...
要用到多线程以及线程的读写锁,之前写的Socket类 ServerSocket要做相应的改变 因为服务器端要维持着一个存储客户端Socket信息到数据结构,当多个线程同时访问这个结构时,要做同步处理,所以要在适当的时候加上读锁或写锁。 新的ServerSocket类 其中有static成员函数,因为创建一个新的线程时,要传递一个函数指针,不过类普通的成员函数的函数指针与一般的函数指针是不兼容的,所 ...
2012-09-06 11:32 7 11417 推荐指数:
本来这次作业我是想搞个图形界面的,然而现实情况是我把题意理解错了,于是乎失去了最初的兴致,还是把程序变成了功能正确但是“UI”不友好的console了,但是不管怎么样,前期的图形界面的开发还是很有收获 ...
多线程开发和Socket技术 一、进程和线程 进程:每个应用程序对应一个进程; 线程:一个进程至少包含一个线程,线程要和CPU进行交互。 多线程并发(可以理解为):"同一时间"执行多件事情,如程序一边执行,一边计数(计时);如人一边吃饭,一边看电视。 多线程并发的本质 ...
这一篇我们用epoll改写之前写的简单聊天室,Epoll是Linux内核为处理大批量句柄而作了改进的poll。 我们要用到epoll的三个函数,分别是:int epoll_create(int size ...
服务器端代码 客户端代码 服务器处理socket的多线程 读取客户端输入流多线程代码 客户端发送数据多线程代码 ...
1、创建服务器类 2、创建客户端类 3、服务器处理socket多线程 4、读取输入流多线程 5、发送数据多线程 ...
最近在学习多线程的时候打算做一个简单的多线程socke聊天的程序,结果发现网上的代码都没有完整的实现功能,所以自己实现了一个demo: demo功能大致就是,有一个服务端负责信息转发,多个客户端发送消息,当一个客户端发送消息时,其他的客户端都可以接受到。 服务端: 客户端 ...
[linux环境编程] TCP通信与多线程编程实现“多人在线聊天室” 一、基本概念 1、TCP通信 TCP(Transmission Control Protocol)就是传输控制通讯协议,是TCP/IP体系结构中最主要的传输协议。其“三次握手”提供了可靠的传送,高可靠性保证 ...
操作系统里的进程通讯方式有6种:(有名/匿名)管道、信号、消息队列、信号量、内存(最快)、套接字(最常用),这里我们来介绍用socket来实现进程通讯。 1、简单实现一个单向发送与接收 这是套接字的工作流程 (对于有时间想慢慢看的推荐这篇博客:https ...