闲着无聊,写了个简单的C/S Socket程序,功能很简单,服务器在9000端口监听socket接入,只要有接入,就发送"Welcome."消息给客户端。

代码分2块,server端:

class Program{static void Main(string[] args){TcpListener lsner = new TcpListener(9000);lsner.Start();Console.WriteLine("started in port: 9000");while (true){TcpClient client=lsner.AcceptTcpClient();Console.WriteLine("new client received. hashcode: {0}", client.GetHashCode());ThreadPool.QueueUserWorkItem(new WaitCallback(ProcessTcpClient), client);}Console.ReadKey();}private static void ProcessTcpClient(object state){TcpClient client=state as TcpClient;if(client==null)Console.WriteLine("client is null");NetworkStream ns=client.GetStream();StreamWriter sw = new StreamWriter(ns);sw.WriteLine("Welcome.");sw.Flush();sw.Close();client.Close();}

client端:

class Program{static void Main(string[] args){IPAddress address = IPAddress.Parse("127.0.0.1");IPEndPoint ep=new IPEndPoint(address, 9000);TcpClient client = new TcpClient();client.Connect(ep);NetworkStream ns=client.GetStream();StreamReader sr = new StreamReader(ns);Console.WriteLine(sr.ReadToEnd());sr.Close();sr.Dispose();ns.Close();ns.Dispose();client.Close();Console.ReadKey();}}

运行效果图如下:

C# Socket编程相关推荐

  1. Windows Socket编程笔记之最简单的小Demo

    Windows Socket编程的大致过程: 服务器端: ----过程-------------对应的API-------  0.初始化         |  WSAStartup()  1.创建So ...

  2. Linux下Socket编程

    Linux下Socket编程    网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符.Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的S ...

  3. [Python_7] Python Socket 编程

    0. 说明 Python Socket 编程 1. TCP 协议 [TCP Server] 通过 netstat -ano 查看端口是否开启 # -*-coding:utf-8-*-"&qu ...

  4. C# Socket编程(5)使用TCP Socket

    TCP 协议(Transmission Control Protocol,传输控制协议)是TCP/IP体系中面向连接(connection oriented)的传输层(transport layer) ...

  5. 【.Net MF网络开发板研究-04】Socket编程之服务端

    前几篇文章介绍了Http相关的应用,其实从技术角度而言,应该先介绍Socket编程,然后再介绍Http,毕竟Http是用Socket相关函数编程实现的. .NET Micro Framework的So ...

  6. socket编程缓冲区大小对send()的影响

    1. 概述 Socket编程中,使用send()传送数据时,返回结果受到以下几个因素的影响: • Blocking模式或non-blocking模式 • 发送缓冲区的大小 • 接收窗口大小 本文档介绍 ...

  7. 华中科技大学计算机通信与网络实验,华中科技大学计算机通信与网络实验报告Socket编程实验.docx...

    实验一 Socket编程实验 1.1环境 开发环境:Windows 10 64 位,Intel Core i5-7300HQ CPU, 8GB 内存 1.1. 1开发平台 Microsoft Visu ...

  8. socket recv 服务端阻塞 python_网络编程(基于socket编程)

    网络编程(基于socket编程) socket套接字:应用程序通常通过socket"套接字"向网络发送请求或应答网络请求,是主机间或同一计算机中的进程间相互通讯 socket是介于 ...

  9. python的socket编程_Python Socket编程详细介绍

    在使用Python做socket编程时,由于需要使用阻塞(默认)的方式来读取数据流,此时对于数据的结束每次都需要自己处理,太麻烦.并且网上也没找到太好的封装,所以就自己写了个简单的封装. 封装思路 1 ...

  10. python 图形化socket编程_Python黑帽编程2.8 套接字编程

    Python黑帽编程2.8 套接字编程 套接字编程在本系列教程中地位并不是很突出,但是我们观察网络应用,绝大多数都是基于Socket来做的,哪怕是绝大多数的木马程序也是如此.官方关于socket编程的 ...

最新文章

  1. 2021.09 电子学会 - 软件编程(图形化)试题讲解
  2. 干货|TensorFlow开发环境搭建(Ubuntu16.04+GPU+TensorFlow源码编译)
  3. R语言威尔考克森秩和统计分布函数Wilcoxon rank Sum Statistic Distribution(dwilcox, pwilcox, qwilcox rwilcox)实战
  4. java中四种引用类型(对象的强、软、弱和虚引用)
  5. Git、GitHub、GitLab三者之间的联系以及区别
  6. php include不可用,无法设置PHP include_path
  7. callback 模式
  8. transaction缩写为什么是tx_TX Transaction locks常见的4种情况
  9. css 彩虹色渐变色,纯CSS实现颜色渐变效果(包含环形渐变、线性渐变、彩虹效果等)...
  10. 【WPF学习手记】WPF超链接使用
  11. 【计算机网络】透明网桥:逆向学习算法逐步建立转发表(例题详细解析)
  12. 基于SSM的网上手机商城购物系统设计与实现 文档+项目源码及数据库文件+运行说明
  13. react 录制音频_如何在React Native中录制音频
  14. JS字符(字母)与ASCII码转换
  15. Unity bug error CS1703: Multiple assemblies with equivalent identity have been imported...
  16. Android实现制作氢壁纸,氢壁纸怎么制作?氢壁纸制作方法介绍[图]
  17. 使用Nacos实现Spring Cloud Zuul的动态路由
  18. 单片机课程学习与感想
  19. 01_安卓APP开发流程概览
  20. Java大作业之餐厅管理系统

热门文章

  1. C语言十六进制转换为八进制(附完整源码)
  2. c++TCP的三次握手和四次挥手
  3. c++内存,堆和栈的区别
  4. protobuf string类型_Protobuf3 使用其他消息类型
  5. 加上项目路径 spring security忽略不生效_Spring 常见面试题「收藏」
  6. android中setdate不是静态,为什么当setData()和setType()不起作用时,android intent的setDataAndType()工作正常?...
  7. 计算机与采集卡无法通信,通信工程毕业设计(论文)-基于.NET平台的高速图像采集.doc...
  8. 「Apollo」百度Apollo感知模块(perception)红绿灯检测代码完整+详细解析
  9. solrj的使用,环境准备,工程搭建,索引创建,添加\修改索引,删除索引,查询
  10. SQL LEFT JOIN与IN使用案例说明