并发编程之进程

什么是程序?

  就是一堆编码产生的文件(躺在硬盘上是“死的”)

什么是进程?

  在内存中正在运行的程序(存在内存中是“活的”)

(发明进程的目的是为了更好地描述正在运行的程序)

计算机通过分配不同的端口号管理不同的进程,多个正在运行的同名程序也算多个不同的进程

进程与进程之间彼此是隔离的,默认情况下不呢能相互交互数据

进程的调度

进度调整的发展史

  1.先来先服务(FCFS)

    哪个程序先启动就先运行谁,后面的程序排队等着

  2.短作业优先调度

    耗时较短的优先服务,耗时较长的延后服务(利于短作业不利于长作业)

  3.时间片与多级反馈队列(最优解)

it编程第七天_标签页

 

同步与异步(描述任务的提交方式)

同步:

  提交一个任务后原地等待任务的结果,期间不做任何事情

异步:

  提交一个任务之后不愿地等待任务的结果,直接去做其他的事情

等任务有结果之后会自动通过回调机制告诉提交者

综上所述,异步在执行任务的时候效率高于同步

 阻塞与非阻塞(描述任务的执行状态)

 it编程第七天_标签页_02

 

 阻塞:

  阻塞(软件自身暂时不需要使用)

非阻塞:

  就绪态  运行态

任务的运行必须是先进入就绪态才能变为运行态

  就绪态>运行态>就绪态>运行态

  就绪态>运行态>阻塞态>就绪态(运行顺序重新开始结算)>运行态

(可以类比成超市购物排队结账的过程)

综上所述

效率最高的是:异步非阻塞  效率最低的是:同步阻塞

(程序员在开发软件的时候应该尽量让自己的程序达到异步非阻塞)

进程的结束与创建

进程的创建

  1.双击一个软件图标

  2.命令创建

  3.代码创建

进程的结束

  1.点击关闭进程

  2.命令结束(taskkill)

  3.代码结束(了解)

并发编程之线程

其实我们前面所学习的进程是一个资源单位

真正与CPU交互工作的是进程里面的线程

(进程相当于车间,线程相当于车间里面的流水线

进程提供给线程运行必须的所有资源)

同一个进程内可以运行多个线程,并且多个线程之间数据是共享的

每一个进程默认都会自带最少一个线程

eg:运行一个word编辑器,该word编辑器在内存中就是一个进程

word编辑器包含的所有功能(打字功能,保存功能,翻译功能)

每一个功能运行都相当于一条线程,但所有线程共属于word编辑器这一个进程

前端

什么是前端?

  任何与用户直接打交道的操作界面都可以称之为“前端”

  (手机界面,电脑界面,淘宝界面,支付宝界面...)

什么是后端?

  不直接与用户打交道的称之为“后端”(程序员写的代码)

  (python代码,java代码,c++代码,php代码)

前端三剑客

  HTML:网页的骨架

  CSS:网页的样式

  JavaScript:网页的动态效果 事件处理等

ps:无论是专业前端还是业余前端都必须要学习三剑客

前端是特别好学的 所见即所得

谷歌浏览器相关操作

(IT行业推荐使用谷歌浏览器)

1.下载完谷歌之后修改默认的搜索引擎

2.如何查看网页源代码

  鼠标右键点击查看网页源码

3.如何查看浏览器优化之后的源代码

  1.鼠标点击检查选择elements标签页

  2.直接按键盘的F12弹出选择elements标签页

it编程第七天_css_03

谷歌浏览器标签页说明

1.elements用于查看优化之后的网页代码

2.console支持直接编写JS代码,类似于一个输出设置

3.sources记录浏览器请求所有的资源文件(后面网络爬虫需要学习)

4.network记录浏览器所有的网络请求(后面网络爬虫需要学习,重点)

5.Application提供额外的储存相关概念(后面网络爬虫需要学习cookies)

 it编程第七天_html_04

1.如何查看页面上某个内容的代码本质

  先点击标签页最左边的按钮,之后悬浮到想要查看的位置,再次点击即可点位

it编程第七天_css_05

 

 

2.如何修改弹出框的位置

  点击右侧三个点选择相应的样式即可

it编程第七天_后缀名_06

 

 前端之HTML

HTML:超文本标记语言

(所有网页其实也是文件,并且以.html结尾)

HTML文件固定语法结构

<html>

  <head>主要书写给浏览器看的内容</head>

  <body>主要书写展示给用户的内容</body>

</html>

注释

  注释的意思是对一段代码的解释,不参与运行只是解释说明

  html中注释的语法是(存储html的文件后缀名是.html)

    <!--注释内容-->

  css中的注释语法是(存储css的文件后缀名是.css)

    /*注释内容*/

  JS中的注释语法是(存储js的文件后缀名是.js)

    // 注释内容

也可以在html文件内通过标签的方式直接书写其他语言

(不同的语言,不同的文件,使用的注释可能都不同)

网页的本质

<!DOCTYPR html>

<html>

<head>

<title>这是我的网页</title>

<style>

<!--style标签内部支持直接书写css代码-->

<!--script标签内部支持直接书写JS代码-->

h1 {

color:red<!--style没用啊这个-->

}

</style>

<script>

alert('99.99...%')<!--script中文和符号都不行,加''的话可以=v=-->

</script>

</head>

<body>

<h1>这是一个h1标签</h1>

<h2>这是一个h2标签</h2>

<h3>这是一个h3标签</h3>

<a href='https://www.cnblogs.com/wyhb/'>点我去博客园</a>

<img src='https://pic.cnblogs.com/avatar/2473958/20210722122805.png' />

</body>

</html>

it编程第七天_html_07