I/O复用使得程序能够同时监听多个文件描述符,对于提高程序性能至关重要。I/O复用不仅仅在网络程序中使用,但是我接触到的例子中,TCP网络编程那块使用I/O复用比较多,例如,TCP服务器同时处理监听socket和连接socket.
在了解I/O复用之前,我们需要先了解几个概念。
1,同步I/O与异步I/O
2,LT(水平触发)和ET(边缘触发)
POSIX把两个术语定义如下:
同...
分类:
其他好文 时间:
2016-05-13 03:05:18
阅读次数:
213
网络编程 网络编程主要用于解决计算机与计算机(手机、平板..)之间的数据传输问题。 网络编程: 不需要基于html页面就可以达到数据之间的传输。 比如: feiQ , QQ , 微信....网页编程: 就是要基于html页面的基础上进行数据的交互的。 比如: 珍爱网、 oa(办公自动化)、 高考的报 ...
分类:
编程语言 时间:
2016-04-07 20:23:42
阅读次数:
186
从这一篇博文起,我们开始剖析Muduo网络库的源码,主要结合《Linux多线程服务端编程》和网上的一些学习资料!
(一)TCP网络编程的本质:三个半事件
1. 连接的建立,包括服务端接受(accept) 新连接和客户端成功发起(connect) 连接。TCP 连接一旦建立,客户端和服务端是平等的,可以各自收发数据。
2. 连接的断开,包括主动断开(close 或shutdown) 和被动断开...
分类:
其他好文 时间:
2016-04-04 01:36:55
阅读次数:
344
net模块提供了一个异步网络包装器,用于TCP网络编程,它包含了创建服务器和客户端的方法 创建TCP服务器 net.createServer方法 创建客户端去连接服务器 net.connect方法 简易聊天室服务端 chatServer.js var net = require('net'); //
分类:
Web程序 时间:
2016-02-26 10:32:02
阅读次数:
166
服务端importjava.net.*;
importjava.io.*;
publicclassTCPServerSocket{
publicstaticvoidmain(String[]args)throwsException{
Stringdata="";
//while(true){
try{
ServerSocketss=newServerSocket(8888);
Sockets=ss.accept();
InputStreamin=s.getInp..
分类:
编程语言 时间:
2016-02-08 17:30:58
阅读次数:
265
TCP网络通信编程,多线程(代码见附录)实验目的:实现PC与物联网试验箱间传输文件,PC作为客户端,在PC上输入一个文件名,通过编制的程序上传到物联网试验箱上。传输协议采用TCP协议。在PC的linux系统上运行client,在物联网试验箱的linux系统上运行server。实验步骤:(1)在PC..
分类:
其他好文 时间:
2015-12-28 06:40:17
阅读次数:
274
net模块提供了一个异步网络包装器,用于TCP网络编程,它包含了创建服务器和客户端的方法。dgram模块用于UDP网络编程。参考链接:https://nodejs.org/api/net.html,https://nodejs.org/api/dgram.html一、TCP Servernet模块通...
分类:
Web程序 时间:
2015-12-21 16:12:35
阅读次数:
202
TCP协议是TCP/IP协议族中的一个十分重要的名字(看到TCP/IP这个名字就知道TCP有多重要了),同时也是一个十分复杂的协议,在使用这个协议的时候可能会带来很多问题,这使得使用的程序员会十分头大。如果想了解TCP协议的细节,可以参考《TCP/IP详解1:协议》。闲话不多说,我们进入正题:
一、报文头
首先我们来看一下TCP协议的报文头:
TCP是传输层协议,其报文头并不...
分类:
其他好文 时间:
2015-08-30 19:42:46
阅读次数:
151
先启动 Server 端,进入一个死循环以便一直监听某端口是否有连接请求。然后运行 Client 端,客户端发出连接请求,服务端监听到这次请求后向客户端发回接受消息,连接建立,启动一个线程去处理这次请求,然后继续死循环监听其他请求。客户端输入字符串后按回车键,向服务器发送数据。服务器读取数据后回复客户端数据。这次请求处理完毕,启动的线程消亡。如果客户端接收到 “OK” 之外的返回数据,会再次发送连接...
分类:
编程语言 时间:
2015-06-03 10:01:42
阅读次数:
153
(1):TCP网络编程我们注意到服务端与客户端通信时是通过客户端的套接字相互通信的,那么服务端的套接字主要是干什么用的呢? TCP服务端设置监听套接字时 int listen(int sock,int backlog); 会一直阻塞在此函数,等待客户端的连接请求。其中 backlog 是设...
分类:
其他好文 时间:
2015-05-16 10:25:04
阅读次数:
108