有段时间没有写了,在做一个带界面的Socket网络聊天系统,当然是入门级的,就是客户端与服务器端的socket相连接,然后 各自创建线程进行接收和传输信息,刚开始很难,在客户端要实现连接用户列表的刷新,有群聊和私聊的功能,用户退出后要在用户列表中去除,做了大概3天吧,由于是多线程和Socket结合在一起,当时线程就学的不太好,刚开始做的很累,没有什么头绪。后来理解实质后就容易多了。
做完后自己又想做个可以传文件的,这个就复杂点了,文件传输是要有持续时间的,要是在传文件时发送信息的话,就要引入线程之间的通信,也就是2个线程对同一个Socket进行操作,实现起来要多花点心思,原来当然也不难。不过要是发送文件时再创建一个新的Socket,专门用来传输文件的话,那就省力多了,不必要引入多线程的操作。好比第一个方法是一个人分别做二件事,后一种方法是二个人同时做二件事。