网络IO是不是一定是双向的,网络编程是不是要 手动关闭 IO通道

本文探讨了网络IO的双通道特性,强调每个通道对应一个网络接口资源,并指出关闭IO通道是释放系统资源的关键。无论网络连接状态如何,都需要手动关闭IO通道以释放网线接口。此外,内容还涉及了IO通道与阻塞IO指令的区别,以及操作系统如何管理这些资源。

1.首先只要是网络IO , 发送端 必定 开启 2个IO通道,网线通道一定也有2个,即网络IO,一定是双向的

2.网络IO 必定有 2条IO通道,而且一定有 一个发送端,和一个接受端,同时发送端也同时作为接收端,接收端同时作为发送端,系统资源都是 网线接口

网络IO 有 2条 IO通道,并且 2条IO通道,各自连着一个网线接口资源,关闭一个IO通道,只会释放一个 网络接口

一个 IO通道,只能获得一个 系统资源,例如网络IO通道有2个就有2个网线接口资源

IO 通道 是 IO的前提,不能算在 IO操作中,而且 执行 阻塞IO指令,os才会把 线程 变成 阻塞态,不能争抢cpu资源,即阻塞IO 和 非 阻塞IO 和IO通道没有关系,而是跟 其IO指令有关系

关于IO占用系统资源的,系统的资源释放与否,只与 IO通道是否关闭有关系,与 IO指令是否执行完毕没有任何关系

3.只是,接收端给发送端回数据有2种:1.ping的通 2.ping不通,ping不通可能回数据给 接收端,可能不回(这个现在我不知道),但是 不管网络通道有几个,但是 IO通道(发送端内存 -> 网线接口的 数据流通道)一定有2个

4.但是,网络IO的关闭,需要写代码关闭,ping不通,ping的通,想释放网线接口资源,就得关闭 IO 通道,我们常见的 浏览器发请求(里面 源码是关闭了IO 通道的),我们写 mysql连接,那我们要 自己关闭 通道,不然,不会释放网线接口(但我们可能根本不想释放)

5.网络编程,也需要手动关闭 IO 通道,不然不会释放资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值