2.3 套接字

套接字是支持TCP协议的操作基本单元,可以用来不同主机之间的相互通信,在一个双方可以进行通信的例子中,保存了本机跟对方的IP地址跟端口,也保存双方的通信协议。套接字可以用C#的socket类来实现。

但是为了简化编程的繁琐,C#又对套接字进行了封装,存在两个很重要的类,TcpClient跟Tcplistener,TcpClient提供本机跟远程的链接信息,TcpListener用来提供监听客户链接请求。

2.4 网络流

它是提供网络的基础数据流,在使用它的时候必须存在socket连接,它有两个主要的类,分别是StreamWriter跟StreamReader,获取网络流有两种方式,分别是用TcpClient跟Socket。有两个主类用来接收跟发送NetworkStream数据,StreamWriter负责发送数据,StreamReader负责接收数据。来.自/吹冰论|文-网www.chuibin.com/

3 概要设计

3.1 设计思路

服务器端开始监听数据,每个客户端根据服务器的域名跟端口建立TcpClient对象,然后客户端输入对应的昵称点击请求访问服务器,服务器具有TcpListener对象,用方法AcceptTcpClient()监听TcpClient对象,每收到连接请求后,就创建一个线程来跟这个客户端连接,通过networkstram传送数据,不断地接收这个客户端发来的消息,有消息会发送到相应的客户端。客户端连接到服务器后,客户端会接收到服务器端发来相应的初始化界面相关的数据,比如最初需要接收服务器发来的桌数,可以动态创建所需的游戏桌,接着客户端不断地有操作比如鼠标事件相应的就会给数据传送到服务器端,服务器做处理,反馈给本玩家以及其他玩家。点击桌可以进入游戏后,初始化棋盘,双方可以对弈,并具有聊天功能,谁先给对方将(帅)吃掉就取得胜利,游戏结束。发送的数据采用逗号相隔的方式,第一个逗号之前代表标识符,说明做什么类型的处理,后面的数据都是相应的参数,客户端或者服务器端接受到相应的数据就会进行处理。另外,所有的游戏运行数据都保存在服务器端的数组里。

上一篇:C#+sqlserver企业人事工资管理系统的设计与实现
下一篇:ASP.NET电脑售后维修服务信息管理系统的设计与实现

基于MOODLE平台的在线交互式学习设计

基于离散事件系统Petri网模型的可达图研究

基于高斯过程动态模型的时序数据恢复方法

基于深度学习的目标识别算法研究

MATLAB基于流形学习与神经网络的预测建模

基于SNA的唐诗关系分析

基于启发式算法的智能路径规划研究

组态王文献综述

林业机械作业中的安全性问题【2230字】

人事管理系统开题报告

淮安市老漂族心理与休闲体育现状的研究

浅谈动画短片《天降好运》中的剧本创作

紫陵阁

大学生就业方向与专业关系的研究

小学《道德与法治》学习心得体会

适合宝妈开的实体店,适...

弹道修正弹实测弹道气象数据使用方法研究