【网络程序设计】Tcp/Udp

继承与程序不同,进程是程序执行的标志而不是程序的静态版本。
用户创建一个进程之后,操作系统即将程序的一个副本装入计算机中,然后启动一个线程执行程序,当然也可以让多个线程“在同一时间”执行同一段代码。
线程是cpu的最小单位,各个线程按照各自的步调运行。

线程池:
编写服务器短代码最简单的方法是:当一个请求到达时就创建一个新的新城,然后在新线程中为它请求服务。这种做法简单,但是对系统带来的消耗很大:一是为每个请求创建一个新线程的开销很大,二是为每一个请求创建新县城的服务器在创建和销毁线程上所花费的时间以及笑话的系统资源要比花在处理实际用户任务上所花费的时间和消耗的系统资源更多。
【说明】(后期要根据操作系统知识对这个模块进行补充说明,在根据操作系统知识说明进程在创建是操作系统在内存、cpu上消耗);

线程池为县城生命周期的开销问题和资源不足问题提供解决方案:通过多个任务重用线程,线程创建的开销分摊到多个任务上。(消除了线程创建是带来的延迟),而且,通过适当的调整线程池总的线程数目,也就是当请求的树木超过规定的最大数目,就强制其他任何新的请求一直等待,直到获得一个线程来处理位置,从而可以防止资源不足。

线程池要到的地方:当一个应用程序服务器接收到大量短小线程的请求时,使用线程池技术可以有效的减少线程的创建和销毁次数

数据流:
流是一种抽象表示,代表存储和检索数据的串行设备(每次一个字节),底层的设备可以是文件、外部设备、主存、网络套接字等。流的三种基本操作:write\read\search.

网络流:

TCP协议:
基于连接的协议;
保证数据包准确到达
保证个数据包到达的顺序与数据包发出的顺序相同。
传输的数据元消息无边界。

猜你喜欢

转载自blog.csdn.net/Alearn_/article/details/80725123
今日推荐