目录
并发编程之进程
#程序
就是一堆编码产生的文件
#进程
在内存中正在运行的程序
"""发明进程的目的是为了更好地描述正在运行的程序"""
eg:电脑上运行了微信、QQ、网易云音乐等
没有进程=正在运行微信、正在运行QQ...
有进程=微信进程、QQ进程...
#一台电脑可以同时运行多个进程
Q:为什么不会出现彼此干扰?
A:计算机通过分配不同的端口号管理不同的进程
多个正在运行的qq程序也算多个不同的进程
进程的调度
#前提:计算机只有一个CPU工作
"""进程调度的发展史"""
1.先来先服务(FCFS)
哪个进程先启动就先运行谁 后面的排队等着
2.短作业优先调度
耗时较短的优先服务 耗时较长的延后服务
3.时间片与多级反馈队列
由就绪进程构成的多个就绪队列 每个队列赋予依次递减的优先级数和不同的时间片配额 (详情请看下图)
同步与异步
#同步
提交一个任务之后原地等待任务的结果 期间不做任何事情
#异步
提交一个任务之后不原地等待任务的结果直接去做其他事情
等任务有结果之后会自动通过回调机制告诉提交者
eg:
同步:A对B说中午一起去吃饭 之后A就坐在B旁边等他忙完
异步:A对B说中午一起去吃饭 之后A去忙自己的事情 等B忙完之后去喊A然后一起去吃饭
"""综上所诉,异步在执行任务史效率更高"""
阻塞与非阻塞
阻塞
软件自身暂时不用CPU
非阻塞
1.就绪态
2.运行态
#任务的运行必须是先进入就绪态才能变为运行态
就绪态 > 运行态 > 就绪态 > 运行态
就绪态 > 运行态 > 阻塞态 > 就绪态 > 运行态
两两组合之后
# 效率最高:异步非阻塞 效率最低:同步阻塞
"""程序员在开发软件的时候应该尽量让自己的程序达到异步非阻塞"""
进程的结束与创建
进程的创建
1.双击一个软件图标
2.命令创建
3.代码创建
进程的结束
1.点击关闭按钮
2.命令结束
3.代码结束
并发编程之线程
#前提: 进程是一个资源单位
"真正与CPU交互工作的是进程里面的线程"
打个比方:
进程相当于车间
线程相当于车间里面的流水线
流水线工作所需要的原材料等跟所在的车间即索要即可
进程提供给线程运行必须的所有的资源
#并且同一个进程内可以运行多个线程且多个线程之间数据是共享的
#每一个进程默认都会自带最少一个线程
前端
前端
任何用户直接打交道的操作界面都可以称之为"前端"
后端
不直接与用户打交道 "后端"(程序员写的代码)
eg:python代码 java代码 c++代码 php代码
# 前端三剑客
1.HTML:网页的骨架
2.CSS:网页的样式
3.JavaScript:网页的动态效果 事件处理等
谷歌浏览器相关操作
# IT行业推荐使用谷歌浏览器
1.下载完谷歌之后修改默认的搜索引擎
2.如何查看网页源代码
鼠标右键点击查看网页源码
3.如何查看浏览器优化之后的源代码
1.鼠标右键点击检查选择elements标签页
2.直接按键盘的F12弹出选择elements标签页
"""谷歌浏览器标签页说明"""
1.Elements用于查看优化之后的网页代码
2.console支持直接编写JS代码 类似于一个输出设置
3.sources记录浏览器请求所有的资源文件(后面网络爬虫需要学习)
4.network记录浏览器所有的网络请求(后面网络爬虫需要学习 重点)
5.Application提供额外的存储相关概念(后面网络爬虫需要学习 cookies)
# 1.如何查看页面上某个内容的代码本质
先点击标签页最左边的按钮 之后悬浮到想要查看的位置 再次点击即可定位
# 2.如何修改弹出框的位置
点击右侧三个点选择相应的样式即可
前端之HTML
HTML
超文本标记语言
#所有的网页其实也是文件,并且以.html结尾
"HTML文件固定语法结构"
<html>
<head>主要书写给浏览器看的内容</head>
<body>主要书写展示给用户的内容</body>
</html>
#注释
对一段代码的解释 不参与运行只是解释说明
1.html中注释的语法是(存储html的文件后缀名是.html)
<!--注释内容-->
2.css中的注释语法是(存储css的文件后缀名是.css)
/*注释内容*/
3.JS中的注释语法是(存储js的文件后缀名是.js)
// 注释内容
"""综上所诉
在html文件内通过标签的方式直接书写其他语言
不同的语言 不同的文件 使用的注释可能都不同"""
网页的本质
<!DOCTYPR html>
<html>
<head>
<title>这是全网唯一个特别的网页</title>
<style>
<!--style标签内部支持直接书写css代码-->
h1 {
color:red
}
</style>
<script>
<!--script标签内部支持直接书写JS代码-->
alert(123)
</script>
</head>
<body>
<h1>这是一个h1标签</h1>
<a href='https://www.baidu.com'>点我去百度</a>
<img src='https://img1.baidu.com/it/u=497641285,412646493&fm=26&fmt=auto&gp=0.jpg' />
</body>
</html>