Giter Club home page Giter Club logo

instant_messaging_system's Introduction

Instant_messaging_system

Linux C++ socket网络编程----------即时通信系统

项目内容: 本项目使用C ++实现一个具备服务器端和客户端即时通信且具有私聊功能的聊天室 目的是学习C++网络开发的基本概念,同时也熟悉了Linux下的C++程序编译和简单MakeFile的编写 需求分析: 1.服务端:能够接受新的客户连接,并将每个客户端发来的信息,广播给对应的目标客户端 2.客户端:能够连接服务器,并向服务器发送消息,同时可以接受服务器发来的消息 服务端: 1.支持多个客户端接入,实现聊天室基本功能 2.启动服务,建立监听端口等待客户端连接 3.使用epoll机制实现并发,增加效率 4.客户端连接时,发送欢迎消息,并存储连接记录 5.客户端发送消息时,根据消息类型,广播给所有用户(群聊)或者指定用户(私聊) 6.客户端请求退出时,对相应连接信息进行清理 客户端: 1.连接服务器 2.支持用户输入消息,发送给服务端 3.接受并显示服务端发来的消息 4.退出连接 客户端需要两个进程分别支持以下功能: 子进程: 1.等待用户输入信息 2.将聊天信息写入管道(pipe),并发送给父进程 父进程: 1.使用epoll机制接收服务端发来的消息,并显示给用户,使用户看到其他用户的信息 2.将子进程发送的聊天信息从管道(pipe)中读取出来,并发送给客户端

instant_messaging_system's People

Contributors

land-cruisersyh avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.