自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 C语言memcpy +memmove实现

memcpy+memmove

2022-08-20 21:00:56 234 1

原创 Linux学习之:进程间通信(匿名管道、命名管道、共享内存)

进程间通信介绍

2022-08-18 15:21:05 592

原创 Linux学习之:基础IO与文件

基础IO与文件

2022-08-17 22:23:55 233

原创 MySQL学习第二部分:事务的理解

mysql事务

2022-08-17 19:45:27 1308

原创 Linux学习之:进程的控制

进程的控制详解

2022-08-16 10:25:18 277

原创 Linux学习之:环境变量

环境变量简介

2022-08-15 19:47:52 325

原创 Linux学习之:进程概念

进程概念

2022-08-15 17:02:45 104

原创 C++迭代器介绍

迭代器介绍

2022-08-15 13:26:04 1368 1

原创 C/C++动态开辟内存

c/c++动态开辟内存

2022-08-15 13:10:48 245

原创 Linux学习之make/Makefile

认识makefile

2022-08-15 11:00:32 108

原创 MySQL学习第二部分:索引特性

数据库索引的原理介绍

2022-08-15 09:54:28 343

原创 C++学习之:布隆过滤器与哈希切分

布隆过滤器与哈希切分应用场景

2022-08-14 14:10:24 355

原创 C++位图简明介绍与实现

位图的介绍与实现

2022-08-13 19:47:37 617

原创 C++深拷贝传统与现代写法

深拷贝传统与现代写法

2022-08-13 14:53:49 288

原创 C++常见排序算法实现

7种排序算法简单实现

2022-08-12 16:51:52 273

原创 C++11特殊类设计之单例设计模式

特殊类设计之单例设计

2022-08-10 22:42:32 440

原创 单例设计模式、迭代器设计模式、适配器设计模式简介

设计模式

2022-08-10 22:41:54 158

原创 C++11之智能指针(RAII)

C++11智能指针介绍(auto_ptr, unique_ptr, shared_ptr, weak_ptr)

2022-08-09 22:43:40 855 1

原创 MySQL学习第一部分:认识MySQL

简单认识MySQL

2022-08-07 16:31:43 95

原创 Linux学习之高级IO:I/O多路转接之poll(认识)与epoll(重点) + 非阻塞读取

poll与epoll介绍

2022-08-06 20:39:19 487

原创 Linux学习之高级IO:五种IO模型

五种IO模型简介

2022-08-05 15:57:24 56

原创 Linux网络学习第七部分:ip协议+数据链路层详解

ip网络层+数据链路层详解

2022-08-05 15:46:29 2100

原创 Linux学习之高级IO:I/O多路转接之select

select讲解

2022-08-05 15:24:55 91

原创 Linux网络学习第六部分:tcp协议详解

详解TCP!

2022-07-29 14:17:14 2386

原创 Linux网络学习之第六部分:认识UDP协议

udp协议内容剖析

2022-07-21 11:15:04 566

原创 Linux之网络学习第五部分:http协议

http协议详解!

2022-07-20 16:41:38 486

原创 找100以内的素数,求约数,求两个数的最大公约数, 两个数相加

求素数,约数,2个数最大公约数

2022-07-20 09:12:28 128

原创 Linux之网络学习第四部分:模拟计算器+序列化与反序列化

本章作用主要为承上启下,一方面训练tcp使用的流程接口,另一方面为下一章介绍http做铺垫

2022-07-14 14:09:16 215

原创 Linux之网络学习第三部分:网络套接字编程之TCP协议

本节为介绍TCP的接口,一共有四种版本的TCP通信分别为:1.单进程版,没人使用,与UDP不同,TCP单进程只能与一个人进行通信!!2.多进程版2.0父子进程与2.1版本父子孙进程3.普通多线程版4.单例模式线程池的多线程版本代码里面的注释很重要,要仔细看!!!对于服务端需要以下函数......

2022-07-12 08:57:53 294

原创 Linux之网络学习第二部分:网络套接字编程之UDP协议

所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口。总结:套接字相当于我们之间通信的桥梁,我们接收与发送的所有信息都要通过套接字。.........

2022-07-09 20:56:56 696

原创 Linux之网络学习第一部分:感性的认识网络

生活在信息时代下的我们,离不开网络,所以我直接介绍下我们平常信息传输的内部机制。

2022-07-09 14:46:40 408

原创 C++11之两个线程交替打印奇偶数

C++11双线程交替打印奇偶数

2022-06-29 22:10:58 773

原创 Linux之多线程第六部分:单例模式

单例模式概念单例模式是一种 "经典的, 常用的, 常考的 " 设计模式。设计模式就是针对不同的情况有与之对应的方法,通俗易懂。单例模式特点某些类, 只应该具有一个对象(实例), 就称之为单例。在很多服务器开发场景中, 经常需要让服务器加载很多的数据 (上百G) 到内存中. 此时往往要用一个单例的类来管理这些数据。什么情况下需要单例模式呢?一般而言,语义上只需要一个,且该对象内部存在大量空间,保存了大量的数据,如果允许拷贝的话,内存中会存在冗余数据。**总结来说就是:只创建一次,加载一次。**

2022-05-20 16:18:50 333

原创 Linux之多线程第五部分:线程池

线程池概念一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。可用线程数量应该取决于可用的并发处理器、处理器内核、内存、网络sockets等的数量。*线程池的应用场景:1.需要大量的线程来完成任务,且完成任务的时间比较短。 WEB服务器完成网页请求这样的任务,使用线程池技术是非常合适的。因为单个任务小,而任务数量巨大,你可

2022-05-20 12:59:44 117

原创 Linux之多线程第四部分:信号量

信号量

2022-05-20 09:14:17 913

原创 Linux之多线程第三部分:线程的互斥与同步(可以直接看总结,通俗易懂)

本篇文章涉及到前两篇的知识点,需要的话可以了解下,有什么问题欢迎评论区留言我们互相学习,共同进步。Linux之多线程第一部分:多线程的概念Linux之多线程第二部分:线程的控制为什么要互斥与同步在介绍互斥之前,先介绍一下为什么要互斥,互斥的作用是什么1.临界资源:凡是被线程共享访问的资源就是临界资源。比如我们多线程,多进程打印数据到显示器,这里的显示器被多个线程都访问了,因此显示器就是临界资源,再比如说全局变量等。2.临界区:我的代码中访问临界资源的代码。并不是我所有的代码都进行访问临界资源的,

2022-05-18 15:52:00 456

原创 Linux之多线程第二部分:线程的控制

看这篇前强烈推荐先看一下第一部分Linux之多线程第一部分:多线程的概念这篇我们主要介绍创建并操作线程的函数,有任何问题欢迎评论区留言,我们互相学习,共同进步!创建线程函数 pthread_create获取当前线程ID函数pthread_self线程的创建 1 #include<stdio.h>

2022-05-12 10:59:47 135

原创 Linux线程ID与内核LWP的关系

先给出图,然后我将根据图来讲解二者的关系:线程ID在使用线程前,我们需要链接线程的pthread第三方库,在Linux中,第三方库被加载到PCB进程中的虚拟地址空间中的栈区与堆区之间的共享区。我们所创建线程的控制块即维护线程的内容都存在pthread第三方库中,当我们创建线程时候大致的流程如下:1.磁盘将pthread库加载到物理内存中2.通过页表映射(不是拷贝!!!)到进程地址空间中的共享区,因为是映射,所以每个进程共用一份pthread库。3.pthread库中存在很多线程的控制块stru

2022-05-08 23:04:27 561

原创 Linux之多线程第一部分:多线程的概念

什么是线程在linux当中线程可以认为是进程的一部分,他与进程共享一份地址空间,而不是新建一个线程就新建一份地址空间(windos操作系统是这样的)。然而,本质上linux是没有线程的概念的,因为CPU在对每个线程处理时,都会把它当作进程来处理,只不过线程在CPU眼里是更轻量级的进程,所以线程只是我们用户理解,在操作系统中他都认为这些是进程,只不过线程可以看作为比进程小一点的进程,下面将画图说明线程在linux中与进程的关系:上图说明了在Linux系统中线程与进程的关系:1.线程与进程共用一份地址空

2022-05-08 15:24:34 504

原创 linux操作系统之进程信号(很详细)

信号的概念生活中遇到红绿灯,我们知道红灯停绿灯行;跑到比赛的枪响了我们知道要开始跑了,这些在我们生活中存在的各种信号在操作系统当中也会有类似的机制,接下来我将分成三个大块来介绍进程间的信号。第一块:信号产生前机器是人生产的,所以就会让机器实现和人类相同的处理问题的机制,比如我们为什么遇到了红灯就知道要停下来,这是因为我们一开始是通过接受教育获得知识才懂得了红绿灯的规则,(OS)操作系统同样,一开始会由程序员在为OS编写好了遇到各种信号的处理时机与处理方法,是所以在我们使用当中遇到各种问题操作系统会接收

2022-04-29 21:37:06 2270 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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