图片

2019-05-02 11:34:12

阅读数 12

评论数 0

进程和线程的区别,以及应用场景

什么是线程? Linux下线程用进程PCB模拟描述,也叫轻量级进程 线程是进程内部的一个执行流,也就是线程在进程的地址空间内运行。 一个进程内的所有线程共享进程资源 线程是CPU调度的基本单位(CPU调度是按照PCB进行调度的) 创建,销毁一个线程相较创建,销毁一个进程成本要低(创建进程...

2018-09-15 22:39:22

阅读数 1348

评论数 0

static的用法

1.static修饰普通变量 static修饰全局变量: 1.作用域:改变链接属性,只在本文件有效,即使extern外部声明也不行,其他文件可定义相同名字的变量 2.初始化:只能被初始化一次,如果是整型不初始化就会自动赋值为0,字符型初始化为空 3.存储区:静态存储区没变 static修...

2018-09-15 00:27:09

阅读数 340

评论数 0

文件压缩项目源码

Heap.h /堆类 #pragma once #include<iostream> using namespace std; #include<vector> #include<as...

2018-09-13 13:30:06

阅读数 101

评论数 0

日期计算器

一  完成的功能 注意:此日历只能用于计算1982年10月15日以及以后的日期 1.日期+/-天数=返回日期(处理:1.如果+/-一个负的天数的情况 2.如果加之后,或减之后的日期非法) 2.两个日期之间间隔的天数,日期-日期=返回的天数(处理:返回的天数不能为负) 3.打印某年某月本月的...

2018-09-13 13:29:32

阅读数 5299

评论数 0

网桥原理分析

网桥工作原理: 一   MAC自学习 网桥收到一帧后先进行自学习,查找转发表中收到帧的源地址有无相匹配的项目,如果没有,就在转发表中增加一个项目,如果有 则把原来的项目进行更新 二  帧转发 查找转发表中收到帧的目的地址有无相匹配的项目,如果没有通过所有其他接口(进入网桥的接口除外)进行...

2018-09-01 21:29:56

阅读数 221

评论数 0

路由器和交换机的区别?

交换机实际就是多接口的网桥 (1)外形上 交换机通常端口比较多,路由器端口少体积小,(路由器一般都集成了交换机的功能,LAN口就是作为交换机的端口来使, WAN用于连接外网的端口。 (2)工作层次不同 交换机在数据链路层(实现数据帧的转发),而路由器在网络层(肩负着网络互连的作用)。 ...

2018-09-01 20:01:17

阅读数 3234

评论数 0

pthreads提供的锁,你都了解哪些?

互斥锁(也叫互斥量)(不要用在性能敏感的地方使用互斥锁)阻塞 互斥锁本质是一个二元变量,其状态为开锁和上锁,常用于多线程访问临界资源时使用,要访问临界资源就要先获取锁 访问完之后释放锁,供别人访问。 (1)访问公共资源前,必须申请该互斥锁,若处于开锁状态,则申请到锁对象,并立即占有该锁,如果...

2018-08-30 15:14:17

阅读数 76

评论数 0

谈谈你所了解的封装继承多态?

封装 把数据和方法封在一个单元中(称之为类),不想让你看到我就封装成私有的(限制别人去做)提供公共的通道供你访问其实封装本质上就是一种管理,,约束掉自由散漫的访问行为,通过规范的行为做这件事,就像火车站管理一样,你不能随意的进入,如果大家都随意上车,那岂不是乱套了,把火车站封装起来,提供统一通道...

2018-08-30 12:42:03

阅读数 80

评论数 0

c++四种强制类型的转换

在C语言中我们学习过隐式类型转换(相关类型),以及显示的强制类型转换(不相关类型) void test() { int i = 1; double d = i;//隐式类型的转换(相关类型) printf("%d,%.f\n", i, d); int...

2018-08-28 17:45:06

阅读数 58

评论数 0

浏览器输入URL后干了什么?

1.URL格式的解析 一个URL包括协议,网络地址,资源路径 协议:最常用的比如HTTP(超文本传输协议)FTP(文件传输协议) 网络地址:可以是域名或者ip地址,包括端口号,如果没有默认为80 资源路径:可以是多种多样的 2.浏览器将域名解析为ip地址    例如:baidu.com...

2018-08-28 15:30:31

阅读数 81

评论数 0

C++11新特性

一 auto/decltype:自动推导类型 之前的C++标准库里面,必须显示指定变量的类型,然而随着模板类型的出现,某些东西的类型,尤其是函数参数的返回值不是那么容易表示。在这种情况下,将中间结果存储在某个变量中是件很困难的事,要去了解模板的内部结构。 c++11提供以下方式两种来缓解上述问...

2018-08-28 15:23:04

阅读数 476

评论数 0

位图与布隆

1K=1024byte 1M=1024k=1024*1024byte(约100万个字节) 1G=1024M=1024*1024*1024byte(约为10亿个字节) 先看一个题,给40亿个不重复无符号整数,给一个无符号整数,快速判断一个数是否在这40亿个数中。 判断一个数在或者不在,我们通...

2018-08-21 17:14:11

阅读数 57

评论数 0

system V进程间通信-----------共享内存

共享内存:就是指把一段物理内存(共享内存)映射到不同进程的虚拟地址空间,两个进程只要操纵自己的虚拟地址空间便可访问物理内存,从而实现进程间的通信。 如下图: 要用共享内存进行通信,我们要做到? 1.如何让共享内存映射到你进程的虚拟地址空间 2.如何创建一个共享内存 我们接着往下看 ...

2018-08-11 23:03:32

阅读数 47

评论数 0

system V 进程间通信-------消息队列

进程间通信,顾名思义就是进程和进程通信,也就是进程a和进程b可以访问内核的同一块空间一个放数据,一个取数据,那么这两个进程就完成通信通信了。 消息队列也有管道一样的不足:1.每个消息的最大长度是有上限的MSGMAX字节,每个消息队列的总字节数是有上限的MSGMNB,系统中消息队列的总数是有上限的...

2018-08-11 21:20:21

阅读数 45

评论数 0

C++中异常处理

传统的错误处理方法 1.终止程序(例如segment  error) 2.返回错误码 3.返回一个合法值,让程序处于非法的状态 4.调用一个预先设置的出现错误时掉的函数-------回调函数 异常处理 异常,当一个函数发现自己无法处理的错误时,抛出异常,让函数的调用者直接或者间接的处理...

2018-08-06 16:49:10

阅读数 57

评论数 0

线程的互斥与同步

什么是互斥?什么是同步? 互斥:一个资源一次只能被一个访问者使用(保证访问数据,唯一访问性) 举个例子:你去上厕所,门一开,人进去,门锁上,在你上厕所期间别人不能打扰 同步:当多个访问者一起工作时并对每个访问者访问的时序有一定限制(保证访问数据,时序访问性) 举个例子:你上完厕所,刚出来,...

2018-08-04 20:52:10

阅读数 378

评论数 0

死锁的产生,防止,避免

死锁 在多任务系统下,当一个或多个进程等待对方的资源,而在等待对方资源之前不会释放得到的资源,这样造成循环等待的一种现象。 产生死锁的原因: 竞争系统资源 进程的推进顺序不当 死锁的四个必要条件: 1.资源互斥/资源不共享(每个资源要么已经分配给一个进程,要么是可用的,只有这两种状态,...

2018-08-04 16:33:08

阅读数 49

评论数 0

浅析正则表达式

正则表达式:是用于描述一组字符串特征的模式,用来匹配特定的字符串。通过特殊字符+普通字符来进行模式描述。 总结就是:正则表达式就是通过特殊字符+普通字符来匹配特定的字符串。---------是一种模糊匹配 grep正则表达式分为三种: 1.BREs:指令后不跟任何参数 2.EREs:指令后...

2018-07-30 11:07:51

阅读数 34

评论数 0

浅谈传输层

上篇博客讲解了应用层协议,本篇接着讲传输层。 一  传输层:负责数据能从发送端到接收端      在TCP/IP协议中用源端口号,源ip,目的端口号,目的ip ,协议号这样一个五元祖来表示一个通信 (用netstat-n查看) 二  端口号:标识了一个主机上进行通信的不同的应用程序    ...

2018-07-23 13:58:09

阅读数 46

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭