[阻塞和非阻塞]

简介:

[阻塞和非阻塞]
在通过socket发送数据时,如果直到数据发送完毕才返回的方式,也就是说如果我们使用send( buffer, 100.....)这样的函数发送100个字节给别人,我们要等待,直到100个自己发送完毕,程序才往下走,这样就是阻塞的,
而非阻塞的方式,当你调用send(buffer,100....)以后,立即返回,此时send函数告诉你发送成功,并不意味着数据已经向目的地发送完毕,甚至有可能数据还没有开始发送,只被保留在系统的缓冲里面,等待被发送,但是你可以认为数据在若干时间后,一定会被目的地完整正确的收到,我们要充分的相信tcp。
阻塞的方式会引起系统的停顿,一般网络游戏里面使用的都是非阻塞的方式,

[tcp和udp]
tcp可以理解为一条连接两个端子的隧道,提供可靠的数据传输服务,
只要发送信息的一方成功的调用了tcp的发送函数发送一段数据,
我们可以认为接收方在若干时间以后一定会接收到完整正确的数据,
不需要去关心网络传输上的细节,
而udp不保证这一点,
对于网络游戏来说,tcp是普遍的选择。
本文转自jiahuafu博客园博客,原文链接http://www.cnblogs.com/jiahuafu/archive/2010/04/09/1708003.html如需转载请自行联系原作者

jiahuafu

相关文章
lda模型和bert模型的文本主题情感分类实战
lda模型和bert模型的文本主题情感分类实战
397 0
|
应用服务中间件 nginx
Mac Nginx nginx: [emerg] mkdir() “/usr/local/var/run/nginx/client_body_temp“ failed ...
Mac Nginx nginx: [emerg] mkdir() “/usr/local/var/run/nginx/client_body_temp“ failed ...
431 2
|
前端开发 安全 Java
SpringBoot验证框架@Valid
SpringBoot验证框架@Valid
143 1
|
JavaScript 前端开发
JavaScriptDOM编程(基础&进阶)3
JavaScriptDOM编程(基础&进阶)3
149 0
|
12月前
|
存储 Windows
Windows 记录一次磁盘相关的PC卡顿问题
【10月更文挑战第25天】本文记录了一次 Windows 10 电脑卡顿问题的排查与解决过程。通过资源监视器、事件查看器、SMART 信息检查、磁盘扫描、后台程序排查、驱动更新等步骤,最终通过磁盘碎片整理和调整虚拟内存设置解决了卡顿问题。文章还提供了定期磁盘维护、合理设置虚拟内存及关注硬件健康的预防措施。
458 1
|
数据处理 开发者 监控
揭秘实时Web应用开发:WebSocket与Akka Streams如何让Play Framework如虎添翼?
【8月更文挑战第31天】实时Web应用需求日益增长,覆盖了从即时通讯到在线游戏等多个领域。Play Framework结合WebSocket与Akka Streams,简化了高效实时应用的开发。WebSocket提供全双工通信,使服务器能主动向客户端推送消息;Akka Streams支持声明式数据流处理,有效避免系统因数据处理不及时而崩溃。本文通过示例代码展示了如何利用这些技术构建实时股票报价系统,展现了其在实时数据处理方面的强大能力。掌握这一技术组合,将大幅提升你在实时Web应用开发中的效率与稳定性。
165 0
|
12月前
|
数据采集 算法 大数据
大数据中数据清洗 (Data Cleaning)
【10月更文挑战第17天】
1057 1
|
存储 分布式计算 Apache
官宣|Apache Paimon 毕业成为顶级项目,数据湖步入实时新篇章!
Apache Paimon 在构建实时数据湖与流批处理技术领域取得了重大突破,数据湖步入实时新篇章!
3559 6
官宣|Apache Paimon 毕业成为顶级项目,数据湖步入实时新篇章!
|
JSON API 开发工具
探索安卓开发:构建你的第一个天气应用
【8月更文挑战第1天】在这篇文章中,我们将一起跳入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。不同于传统的介绍性内容,我们将直接潜入代码的深海,通过实际示例来展示如何在安卓平台上实现这一目标。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供新的视角和实用技巧。
|
机器人 数据安全/隐私保护 Windows
云桌面上跑微信机器人,不需要一直开着windows系统了(部署运行机器人)
接上篇文章,本文主要介绍如何在云桌面上部署运行微信机器人
396 1
云桌面上跑微信机器人,不需要一直开着windows系统了(部署运行机器人)