C# Socket初探

闲着无聊,写了个简单的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();}}

 

运行效果图如下:

 

 

转载于:https://www.cnblogs.com/aarond/p/socket.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/493999.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新发布 | 2018年度第八届吴文俊人工智能科学技术奖获奖名单公示

来源:人工智能人物摘要:2018年度第八届吴文俊人工智能科学技术奖评审工作已经完成。根据《吴文俊人工智能科学技术奖励条例》和《吴文俊人工智能科学技术奖励实施细则》相关规定,经全国各地方人工智能学会、各高校及科研院所、团体会员单位和…

ReactNative环境配置

参考链接 Windows系统安装React Native环境 windows下React Native Android 环境搭建 在Windows下搭建React Native Android开发环境 碰到的问题 react-native可能在cmd窗口提示不是内部或外部命令 解决方法:在nodeJS command prompt下可以运行 运行时卡在最…

qt.pro转成vs程序

今天下载了一个smarthome项目,界面用qml实现的, 想用vs编译生成.exe文件,在wince上运行 方法一(vs命令行): 一: 打开vs 2008 命令行,进入smarthome目录下: 二: qmake生成 smarthome.vcproj工程…

DNA存储:这些公司正在开启数据存储的未来

来源:资本实验室随着数字化时代的到来,可以毫不夸张地说,数据存储与安全正在成为整个社会正常运行的基础。同时,物联网、人工智能、虚拟现实、自动驾驶等新技术的应用则进一步大幅提升了数据存储要求。据IDC预测,到202…

React基础语法学习

React主要有如下3个特点: 作为UI(Just the UI)虚拟DOM(Virtual DOM):这是亮点 是React最重要的一个特性 放进内存 最小更新的视图,差异部分更新 diff算法数据流(Date Flow)单向数据流 学习Re…

C#中ListT用法

所属命名空间&#xff1a;System.Collections.Generic public classList<T> :IList<T>,ICollection<T>,IEnumerable<T>,IList,ICollection,IEnumerable List<T>类是ArrayList类的泛型等效类。该类使用大小可按需动态增加的数组实现IList<…

算力超英伟达?华为推出两款“昇腾”芯片;五大AI战略正式公布

来源&#xff1a;AI科技大本营华为也像是要 All in AI 了。10 月 10 日&#xff0c;华为全联接大会 2018 上&#xff0c;华为轮值董事长徐直军带来了一系列的硬核 AI。在大会上&#xff0c;他系统公布了华为的 AI 发展战略&#xff0c;以及全栈全场景 AI 解决方案&#xff0c;其…

Qt5:渐变效果的实现

http://devbean.blog.51cto.com/448512/238168/ 转载于:https://www.cnblogs.com/wowk/p/3174602.html

React之JSX入门

React是由ReactJS与React Native组成&#xff0c;其中ReactJS是Facebook开源的一个前端框架&#xff0c;React Native 是ReactJS思想在native上的体现&#xff01; JSX并不是一门新的语言&#xff0c;仅仅是个语法糖&#xff0c;允许开发者在JavaScript中书写HTML语法。&…

英特尔人工智能副总裁:AI不是一种技能,而是一种对于工作的描述

来源&#xff1a;网络大数据人工智能领域的迅速发展&#xff0c;相关人才不能满足需求已经成为业界共识。有报道称&#xff0c;因为人工智能工程师庞大的缺口&#xff0c;一些公司为了获得人才不得不支付数百万美元的薪水。如何满足对人工智能工程师不断增长的招聘和培训的需求…

html 中表格长度固定

2010-02-03 14:25 1070人阅读 评论(0) 收藏 举报htmlclassxhtml产品bordertable<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns"http://www.w3.org/1999/xht…

React Native实例

本文主要包括以下内容 View组件的实例 Text组件实例 Navigator组件实例 TextInput组件实例 View组件的实例 效果如下 代码如下 /*** Sample React Native App* https://github.com/facebook/react-native* flow*/import React, { Component } from react; import {AppRe…

谷歌的硬件梦:Pixel手机、ChromeOS平板和Home音箱

来源&#xff1a; 网易智能&#xff08;北京时间10月9日23点&#xff09;&#xff0c;谷歌在纽约如期举行了主题为“谷歌制造”&#xff08;Made By Google&#xff09;的硬件发布会&#xff0c;推出了Pixel手机、平板 笔记本&#xff0c;以及音箱等一系列新品硬件。一个月以来…

浅用block 转

block是一门有用的大后期学问。现在我只是列出一点基本用法。 1.快速枚举&#xff08;Enumeration&#xff09; 通常是和NSArray, NSDictionary, NSSet, NSIndexSet放在一起用。 当和以上这两种东西放在一起用时&#xff0c;通常block有两种用处。&#xff08;代码为实例操作&a…

数据结构之图的实现

本文主要包括以下内容 邻接矩阵实现无向图 邻接表实现无向图 邻接矩阵实现有向图邻接表实现有向图 图的理论基础&#xff0c;请参考&#xff1a;图的理论基础 - 如果天空不死 - 博客园 邻接矩阵实现无向图 MatrixUDG是邻接矩阵对应的结构体。 mVexs用于保存顶点&#xf…

“万维网之父”发文阐述其下一个网络时代:将数据与应用分离,互联网去中心化正在路上...

来源&#xff1a;Deep Tech深科技关注“万维网之父”Tim Berners-Lee 动态的人&#xff0c;一定知道这位业内大神正在投身于下一代互联网的建设——一个去中心化的互联网。他正在领导其 MIT 团队搭建一个名为“ Solid ”&#xff08;Social Linked Data 社交关联数据&#xff0…

设置easyui input默认值

/*设置input 焦点*/ $(function () {//集体调用 $(".formTextBoxes input").each(function () {$(this).setDefauleValue();});//单个调用 $(".textkey").setDefauleValue(); })//设置input,textarea默认值 .之前写法$.fn.seDefauleValue function(){ $.f…

React Native官方DEMO

官方给我们提供了UIExplorer项目&#xff0c;这里边包含React Native的基本所有组件的使用介绍和方法。 运行官方DEMO步骤如下 安装react native环境 React Native项目源码下载下载安装cygwin软件 下载安装NDK然后安装以及配置 添加Node依赖模块:该命令行需要切到react-nati…

牛津教授揭秘AI革命及其前沿进展

来源&#xff1a;专知导读&#xff1a;2018年9月9日-14日&#xff0c;DeepMind主办的Deep Learning Indaba 2018大会在南非斯泰伦博斯举行。会上&#xff0c;牛津大学教授Nando de Freitas和其他15位专家做了《深度学习&#xff1a;AI革命及其前沿进展》的报告。报告导读&#…

【will】JS去字符串首尾空格

当IE不支持Jquery的Trim()方法时&#xff0c; 就需要JS的方法&#xff1a; function mytrim(str){return str.replace(/^\s|\s$/g,"");}转载于:https://www.cnblogs.com/EMTeam/p/3181471.html