提到高并发,这几年几乎是火遍编程界的网络名词了。无它,随着现在互联网的高速发展特别是电商平台类的应用快速发展,互联网服务内容也越来越丰富,用户越来越多,淘宝、天猫、京东、“拼夕夕”、抖音等几乎成为了广大群众每日必用的应用了。而在这些应用中见到的“天猫双11”、“京东618”、“商品秒杀”、“火车票抢票”往往都是短时间内产生大量的并发访问量和流量,如果不解决我们也不是没有见过天猫双11崩溃的时候!那么如何解决这种高并发问题的首要基础就是能够玩好线程,所以下面的内容我们就来学习下线程。
1.为什么要有线程?
举个简单例子,假设我们在使用百度网盘这个应用,我们想要使用百度网盘的上传和下载功能。没有线程的话那么我们的操作只能是这样的: 我们上传文件的时候就不能干别的事,需要我们上传成功之后才能下载别的东西,并且上传文件也只能一个个的上传,那将是很糟糕的一个体验。那么我们想要百度网盘即可以一边上传一边下载,并且可以多个上传多个下载这样的多任务操作应该怎么办呢?没错就是使用线程了!
现在的操作系统不管是windows也好、linux系列的也好基本上都是多用户多任务的操作系统,而多任务就是靠多线程来实现的。多任务执行也就是所谓的并发。
2.操作系统中进程和线程的概念
提到线程,我们就不得不先提下进程,往往很多人认为一个进程就是一个程序,那么是不是这么一回事呢?我们来看看进程的定义。
·进程概述
系统中能够独立运行的程序被称为一个进程。进程是CPU分配资源的最小单位;
例如:windows的进程