socket总结

C# Socket高并发 C#高性能大容量SOCKET并发(转) C#高性能大容量SOCKET并发(零):代码结构说明 C#高性能大容量SOCKET并发(一):IOCP完成端口例子介绍 C#高性能大容量SOCKET并发(二):SocketAsyncEventArgs封装 C#高性能大容量SOCKET并发(三):接收、发送 C#高性能大容量SOCKET并发(四):缓存设计 C#高性能大容量SOCKET并发... 阅读详情

一、socket:又被称为套接字。网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。


二、个人主要是写Java,所以这里重点讲Java Socket。

    (1)socket是java.net包下的一个类,另外还有一个与之相关的类---serverSocket(实现服务器套接字,用于服务器端)。这里重点讲一下socket。

        1、socket的建立。可以通过以下几种方式:

           a、Socket socket = new Socket(); //建立一个socket连接

              socket.connect(new InetSocketAddress(host, port),timeout);  //将socket连接到服务器上的某个端口并且设置连接的超时时间

           b、Socket socket = new Socket(host,port); //建立一个连接到指定服务器的指定端口上socket

        总结:当需要设置连接的超时时间时,采用第一种;否则采用第二种

        2、一些重要方法的使用:

           设置读取数据的超时时间:setSoTimeout(int timeout)  以毫秒为单位

           判断socket是否处于连接状态:boolean isConnected = socket.isConnected() && !socket.isClosed();

           关闭socket:close();

           获取输出流:socket.getOutputStream()

           获取输入流:socket.getInputStream()

           判断输入流通道是否关闭:socket.isInputShutdown()

           判断输出流通道是否关闭:socket.isOutputShutdown()

        3、socket的异常捕获:

           UnknownHostException  未知主机异常

           ConnectException  连接异常

           SocketTimeoutException  请求超时异常

           IOException  IO异常


           IOException---->UnknownHostException

                      ---->InterruptedIOException---->SocketTimeoutException

                      ---->SocketException---->BindException

                                          ---->ConnectException

        4、通常实际开发时,我们用socket会结合规定的通信协议进行组包、发包、收包、拆包(解析)、最终得到我们要的数据。通常一个数据包分成包头和包体,我们收包的时候一定要保证完整性,即保证数据接收完整,这里我们可以通过我们获取的数据包的长度作为判断条件(一直到接收完为止)。服务器在发送数据的时候由于网络情况、主机拥堵等情况,可能不会一次发送整个数据,而是分包。


    (2)serverSocket:

        此类实现服务器套接字。服务器套接字等待请求通过网络传入。它基于该请求执行某些操作,然后可能向请求者返回结果。

        在用的时候,ServerSocket server = new ServerSocket(port);  //定义一个serverSocket监听端口port上。  Socket socket = server.accept();  //server尝试接收其他Socket的连接请求,server的accept方法是阻塞式的。


HTTP、TCP/IP、socket及bluetooth-socket的整理 网络OSI七层模型 1物理层(简单理解网线)-- 2数据链路层(简单理解网卡)-- 3网络层(IP协议)-- 4传输层(TCP协议)-- 5会话层-- 6表示层(HTTP)-- 电脑/手机能够使用联网功能是因为底层实现了TCP/IP协议,可以使终端通过网络设备(网卡)建立TCP连接。TCP协议可以对上层(传输层)网络提供接口,使上层网络数据的传输建立在“无差别(不管是有线,无线,局域网,广域网等)”的网络之上。 在建立TCP/IP连接之前,需要进行三次确认后,客户端与服务器才正式开始传送数据。理想状态下 阅读详情

相关推荐

深入解析TI C2000 ePWM模块:峰值电流模式Buck与LLC谐振变换器实战配置

脉宽调制(PWM)技术是电力电子与数字电源控制的核心,它通过调节开关信号的占空比或频率,实现对功率变换器输出电压、电流的精确控制。其基本原理是利用微控制器内部的定时器和比较器,生成具有特定时序的方波信号,驱动功率开关器件。这项技术的核心价值在于将复杂的模拟控制环路数字化,从而提升系统的可控性、灵活性和可靠性。在电机驱动、不间断电源(UPS)、服务器电源和新能源逆变器等广泛应用场景中,PWM技术都是实现高效能量转换的基石。本文聚焦于德州仪器(TI)C2000系列微控制器中功能强大的增强型PWM(ePWM)模块

weixin_30410119的博客 345

Socket编程基础总结,全网最全

全网最全的Socket套接字网络编程基础总结

a13731942290的博客 2606

Balser相机的硬件触发实战:从连线到信号处理

本文详细介绍了Balser相机硬件触发的实战应用,从硬件接线、信号定义到软件配置(Pylon Viewer及API)提供了完整指南。重点阐述了如何利用外部物理电信号实现微秒级精准触发,解决工业场景下的同步与延迟问题,并分享了信号调理、抗干扰等高级实战经验。

y9z0a1b的博客 337

socket编程初窥

占位,今天写完。

个人开发之路 501

YOLOv5添加注意力机制的具体步骤

本文主要介绍了 本文在此篇博客的基础上向YOLOv5-5.0版 本文主要包括以下内容一、CBAM注意力机制添加(1)修改yolov5s主干网络(2)在common.py中添加可调用的CBAM模块(3)向yolo.py文件添加CBAMC3判断语句二、SE注意力机制添加 本文以yolov5s网络为例 一、CBAM注意力机制添加 注意力机制可以添加在backbone,Neck,Head等部分,接下来本文以backbone主干网络为例 (1)修改yolov5s主干网络 1.在yolov5-5.0工程文件夹下,找到m

thy0000的博客 2万+

物流分拣YOLO实战:YOLO26 OBB+YOLOv8多尺度融合,不规则包裹分拣效率提升40%(附训练+部署代码)

在物流分拣的工业场景中,模型的检测精度、推理速度、部署友好性本次基于YOLO26 OBB+YOLOv8多尺度融合打造的物流分拣视觉检测方案,精准解决了工业场景中不规则包裹的旋转检测、多尺度包裹的漏检问题,最终实现分拣效率提升40%,检测准确率提升至95%以上,且模型在边缘设备上的推理帧率稳定35FPS+,完全适配物流分拣的工业落地需求。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 882

Socket网络编程学习笔记 (7)TCP快速入门

1.TCP是什么 TCP,(Transmission Control Protocol,缩写为TCP)。TCP是传输控制协议;是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。TCP与UDP意义完成第四层传输所指定的功能与职责。 (1)TCP的机制: 三次握手、四次挥手 具有校验机制、可靠、数据传输稳定 (2)三次握手图解: (2)TCP能做的功能 聊天消息传输、推送 单人语音、视频聊天等 几乎UDP能做的都能做,但需要考虑复杂性、性能问题 限制:无

喜欢历史的码农 2184

华为OD新系统机试真题-文章特征提取

华为OD机试新系统真题 【文章特征提取】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD新系统机试真题【文章特征提取】

qq_45776114的博客 729

Java Socket Timeout总结

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34146986的博客 1163

计算机视觉卷积神经网络(CNN)基础:从LeNet到ResNet

计算机视觉卷积神经网络(CNN)基础:从LeNet到ResNet,在计算机视觉领域,卷积神经网络(Convolutional Neural Network,CNN)已然成为推动众多任务发展的核心力量。从早期简单的图像识别,到如今复杂的目标检测、语义分割、图像生成等任务,CNN 都展现出了卓越的性能。CNN 的发展历程见证了一系列经典模型的诞生,其中 LeNet 作为开山之作,为 CNN 的发展奠定了基础,而 ResNet 则通过创新性的设计,突破了传统神经网络的限制,使得网络能够构建得更深、性能更优。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 14万+

python如何给声音增加回声效果

创建任何声音对象的回声效果。使用sndarray和numpy来创建原始声音的偏移和衰减副本。目前它只是使用硬编码的值来设置回声的数量和延迟。你可以根据自己的需要轻松地重新创建。这段注释说明了make_echo函数的用途和实现方式,即通过pygame的sndarray模块和numpy库来处理声音数据,生成具有回声效果的声音。函数中使用了固定的回声数量和延迟时间,但这些值可以根据用户的需求进行调整。

zhangzhechun的专栏 977

java new socket 非常慢(附非常笨的解决方法)

近日不知突然间连接SOCKET非常慢,而我的另一台电脑又不会,说明代码是没有问题的,具体情况如下运行代码Socket sock = new Socket();sock.connect( new InetSocketAddress( host, port ), timeout );每次都可以连上,但每次都要4秒钟的时间!!到网上找逛了一圈发现都没有解决方法,但发现一个人的情况和我一样,他说可能是

rocgege的专栏 1490

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

socket

UNIX system V有:消息(message)、共享存储区(shared memory)和信号量(semaphore)等.网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。这样利用三元组(ip地址,协议,端口)就可以标识网络的进程使用TCP/IP协议的应用程序通常采用应用编程接口:UNIX  BSD的套接字(socket)和UNIX ...

httpdrestart的博客 3万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Windows 环境下的 Socket 编程 1 - 环境搭建和 Socket 相关函数

版本占用 2 字节,高 8 位为副版本,低 8 位为主版本,比如 V1.2 版本,则传递 0x0201。Windows 严格区分文件 I/O 函数和 SOCKET I/O函数,而Linux只有文件 I/O 函数。编译:菜单 Terminal > Run Build Task ,或者快捷键 Ctrl+Shift+B。编译:菜单 Terminal > Run Build Task ,或者快捷键 Ctrl+Shift+B。其次,当程序结束之前,需要调用。版本,并初始化相应版本的库。函数,设置程序中用到的。....

朱工的专栏 5945

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Perl Socket 编程

Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯。本章节我们为大家接收 Perl 语言中如何使用 Socket 服务。

Kandy1iu的博客 2166

windows 下C语言socket编程

之前一直在Linux系统开发C语言的socket,由于项目的需要 需要在windows下开发,第一次在windows下开 发,顺便记录下来。 首先socket的通信流程: Server程序: 1 .创建socket:socket(); 2. 绑定socket的IP+端口号:bind(); 3.监听端口号:listen(); 4.接收客户端的连接请求:accept(); 5.读写客...

fly_sky_share的博客 6381

什么是SOCKET编程?在PHP中如何实现SOCKET通信?

SOCKET编程是一种网络编程方式,它允许程序通过网络(如Internet)或本地机器(如Unix域套接字)进行通信。SOCKET可以看作是网络通信的一个端点,通过它,程序可以发送和接收数据。SOCKET编程提供了低级的网络通信接口,使得程序员可以直接控制网络数据流。SOCKET编程是一种基础但强大的网络编程技术,它允许程序通过网络进行直接通信。在PHP中,可以使用内置的socket_*函数来实现SOCKET编程,创建服务器端和客户端进行通信。

长风破浪会有时的博客 1632

Socket描述符选项[SOL_SOCKET]

Socket描述符选项[SOL_SOCKET]  #include      int setsockopt( int socket, int level, int option_name,                         const void *option_value, size_t option_len); 

linuxerhqt的专栏 3万+

网络协议之:socket协议详解之Socket和Stream Socket

文章目录简介Socket是什么Stream Socket使用socat创建一个TCP服务器使用ss检查TCP连接使用nc连接socket总结 简介 不管是在普通的网络编程中还是在netty中,都经常会提到一个词叫做socket,好像socket是一个神奇的东西,使用socket我们可以建立客户端到服务器端的连接,并且和进行客户端和服务器端的通讯,那么socket到底是什么呢?它有哪些分类呢?一起来看看吧。 Socket是什么 socket的中文翻译是套接字,个人觉的这个翻译真的是太差劲了,套接字听起来毫无意

程序那些事 9029

C++ socket编程基础二(三种Socket:TCP,UDP,原始Socket)

一、基于TCP(面向连接)的的Socket   1、服务器端   创建套接字 SOCKET socket( int af, //参数af指定通信发生的区域:AF_UNIX、AF_INET、AF_NS等,而DOS、 WINDOWS中仅支持AF_INET,它是网际网区域。因此,地址族与协议族相同。 int type, //参数type 描述要建立的套接字的类型。这里分三种:TCP

蚂蚁的坚持 6143

Socket原理和Socket函数

Socket的概念 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。如下图: 先从服务器端说起。服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen)...

梓栋DREM 3340

socket介绍

Socket: socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务 1、网络中进程之间如何通信? TCP/IP协议族来处理,网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“

许嵩不爱吃土豆的博客 2890

Socket

 1         前言 在一些常用的编程技术中,Socket网络编程可以说是最简单的一种。而且Socket编程需要的基础知识很少,适合初学者学习网络编程。目前支持网络传输的技术、语言和工具繁多,但是大部分都是基于Socket开发的,虽说这些“高级”的网络技术屏蔽了大部分底层实现,号称能极大程度的简化开发,而事实上如果你没有一点Socket基础,要理解和应用这些技术还是很困难的,而且会让

生活要精彩 1129

关于socket的各种错误码

1、INVALID_SOCKET : 表示该 socket fd 无效。如 accept(2) 或 socket(2) 等在创建socketfd时: int m_socket = socket(AF_INET, SOCK_STREAM, 0); if (m_socket == INVALID_SOCKET){ printf("socket failed, err_code=%d\n", _G...

u014694510的博客 2万+

【底层机制】【Socket】本地Socket VS 普通 Socket?Zygote为什么使用本地Socket?

本地Socket是为同一台机器上的进程间通信量身定制的解决方案,而普通Socket是为跨网络通信设计的。在Android系统内部通信这种特定场景下,本地Socket在性能、安全和简洁性方面都具有绝对优势

沐怡旸的专栏 1116
上一篇: Android四大组件详解
下一篇: Android中视频播放以及解码
zdj_develop
博客等级 码龄11年 56粉丝 109原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值