- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Socket 编程,一个服务器,多个客户端,互相通信(测试通过)
Socket 编程,一个服务器,多个客户端,互相通信
关于一个 Scoket 通信的基本代码和一个基本的通信
实现一个服务器和N个客户端的互相聊天
一、Server:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Net;//Endpoint
using System.Net.Sockets;//包含套接字
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.IO;
namespace Server
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
TextBox.CheckForIllegalCrossThreadCalls = false; //关闭跨线程修改控件检查
}
Socket sokWatch = null; //负责监听 客户端段 连接请求的 套接字
Thread threadWatch = null; //负责 调用套接字, 执行 监听请求的线程
//开启监听 按钮
private void btnStartListen_Click(object sender, EventArgs e)
{
//实例化 套接字 (ip4寻址协议,流式传输,TCP协议)
sokWatch = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//创建 ip对象
IPAddress address = IPAddress.Parse(txtIP.Text.Trim());
//创建网络节点对象 包含 ip和port
IPEndPoint endpoint = new IPEndPoint(address, int.Parse(txtPort.Text.Trim()));
//将 监听套接字 绑定到 对应的IP和端口
sokWatch.Bind(endpoint);
//设置 监听队列 长度为10(同时能够处理 10个连接请求)
sokWatch.Listen(10);
threadWatch = new Thread(StartWatch);
threadWatch.IsBackground = true;
threadWatch.Start();
txtShow.AppendText(启动服务器成功......\r\n);
}
Dictionarystring, ConnectionClient dictConn = new Dictionarystring, ConnectionClient();
bool isWatch = true;
#region 1.被线程调用 监听连接端口
/// summary
/// 被线程调用 监听连接端口
/// /summary
void StartWatch()
{
while (isWatch)
{
//threadWatch.SetApartmentState(ApartmentState.STA);
//监听 客户端 连接请求,但是,Accept会阻断当前线程
Socket sokMsg = sokWatch.Accept();//监听到请求,立即创建负责与该客户端套接
您可能关注的文档
最近下载
- 降钙素原抗体产品技术要求标准2024年.pdf VIP
- 2013-2022同等学历申硕学位英语真题(含答案).pdf VIP
- 2023年全国职业院校技能大赛食品安全与质量检测题库1-10.docx VIP
- 内部培训刑法知识考试题库大全及答案下载.pdf VIP
- 2025至2030全球及中国车载摄像头模块组件行业项目调研及市场前景预测评估报告.docx
- 2023-2024学年安徽省合肥重点中学九年级(上)第一次月考道德与法治试卷.pdf VIP
- 人教版(2024新版)九年级上册化学全册教案教学设计.docx
- 中国油田分布明细-含分布图.docx VIP
- 6.4 酵母菌子囊孢子的观察(原理讲解).pdf VIP
- AIGC技术在非物质文化遗产设计保护中的应用探索 .pdf VIP
文档评论(0)