例子:
服务端:
...
conn.Write。。
buffer := make([]byte, 1024)
for {
n, err := conn.Read(buffer)
....
客户端:
...
conn.Write。。。
buffer := make([]byte, 1024)
for {
n, err := conn.Read(buffer)
...
例子:
服务端:
...
conn.Write。。
buffer := make([]byte, 1024)
for {
n, err := conn.Read(buffer)
....
客户端:
...
conn.Write。。。
buffer := make([]byte, 1024)
for {
n, err := conn.Read(buffer)
...
|
freedomSkyMar 26, 2019
1
关键字 “双工”
|
|
2
一条双向路,两个方向同时有人走,会把人丢了吗?
在外部看 socket 的通道和缓冲区都是读写隔离的。 |
|
AkiyuMar 26, 2019
3
去看一下 UNP
我记得底层是类似两条管道实现的, 所以不会 |
|
opengpsMar 26, 2019
4
不冲突啊
|
|
5
@freedomSky 那两边同时传大数据超出了各自的缓冲区,两边都会死等吗?
|
|
alexsunxlMar 26, 2019
6
超过缓冲区就会丢包, 然后速度会降下来, 直到你应用层能处理掉缓冲区, 又把速度生上来。
|
|
7
好像也差不多是等死的意思
|
|
justiceloveMar 26, 2019
9
不会,建议多了解下 TCP
|
|
sundevMar 26, 2019
10
楼主的问题对应“全双工”、“滑动窗口”
|