自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据集符号

java基础**数据及符号**第一篇博客来说一说Java数据及符号数据 基本数据类型:byte、int、double、char… 引用数据类型:String、Integer…基本数据类型1.整数byte(1字节) short(2字节) int(4字节) long(8字节 后跟L或l)默认int2.浮点float(4字节 后跟F或f) double(8字节)默认double3.字符char(2字节)4.布尔boolean(true或false)转换基本数

2020-09-17 12:23:42 827

原创 Linux下的i/o复用——epoll

1、i/o复用一个进程或者一个线程能够同时对多个文件描述符(socket)提供服务,服务器上的进程或线程如何将多个文件描述符统一监听,当任意一个文件描述符上有事件发生,其都能及时处理。2、epoll()函数函数原型 int epoll_create(int size);int epoll_clt(int epollfd,int cmd,int fd,struct epoll_event *event);int epoll_wait(int epollfd struct epoll_event *

2020-08-20 17:28:51 165

原创 Linux下的i/o复用——poll

1、i/o复用一个进程或者一个线程能够同时对多个文件描述符(socket)提供服务,服务器上的进程或线程如何将多个文件描述符统一监听,当任意一个文件描述符上有事件发生,其都能及时处理。2、poll()函数函数原型:int poll(struct pollfd *fds,int nfds,int timeout);函数原型参数解释:struct pollfd的定义struct pollfd{int fd; ————用户关注的文件描述符short event; ————

2020-08-19 18:29:59 188

原创 Linux下的i/o复用——select

1、i/o复用一个进程或者一个线程能够同时对多个文件描述符(socket)提供服务,服务器上的进程或线程如何将多个文件描述符统一监听,当任意一个文件描述符上有事件发生,其都能及时处理。2、select函数启动监听:int select(int nfds,fd_set *readfds , fd_set *writefds ,fd_set *excefds ,struct timeval *timeout);每次启动select调用时都能够重新设置值readfds,writefds。其中fd_set

2020-08-18 15:36:34 117

原创 Linux下的多线程创建合并执行

1、为什么要使用多线程使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操作方式。我们知道,在Linux系统下,启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段,这是一种"昂贵"的多任务工作方式。而运行于一个进程中的多个线程,它们彼此之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于启动一个进程所花费的空间,而且,线程间彼此切换所需的时间也远远小于进程间切换所需要的时间。据统计,总的说来,一个进程的开销大约是一个线程开销的30倍

2020-08-16 17:28:56 301

原创 Linux下的进程间通信——共享内存

一、什么是进程间通信进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,那就是双方都可以访问的外设了。在这个意义上,两个进程当然也可以通过磁盘上的普通文件交换信息,或者通过“注册表”或其它数据库中的某些表项和记录交换信息。广义上这也是进程间通信的手段,但是一般都不把这算作“进程间通信”。二、共享内存的基本概念共

2020-08-14 19:30:50 259

原创 Linux下的进程间通信——消息队列

一、什么是进程间通信进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,那就是双方都可以访问的外设了。在这个意义上,两个进程当然也可以通过磁盘上的普通文件交换信息,或者通过“注册表”或其它数据库中的某些表项和记录交换信息。广义上这也是进程间通信的手段,但是一般都不把这算作“进程间通信”。二、消息队列的定义Mes

2020-08-14 11:55:47 225

原创 Linux下的进程间通信——信号量

一、什么是进程间通信进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,那就是双方都可以访问的外设了。在这个意义上,两个进程当然也可以通过磁盘上的普通文件交换信息,或者通过“注册表”或其它数据库中的某些表项和记录交换信息。广义上这也是进程间通信的手段,但是一般都不把这算作“进程间通信”。二、信号量在进程间通信方式

2020-08-13 18:38:00 236

原创 Linux下的进程间通信方式———管道

一、什么是进程间通信进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,那就是双方都可以访问的外设了。在这个意义上,两个进程当然也可以通过磁盘上的普通文件交换信息,或者通过“注册表”或其它数据库中的某些表项和记录交换信息。广义上这也是进程间通信的手段,但是一般都不把这算作“进程间通信”。二 、管道在进程间通信的方

2020-08-13 18:05:55 167

原创 Linux下的fork复制进程

复制进程(共享资源)1.复制进程的概念fork创建一个进程时,子进程只是完全复制父进程的资源,复制出来的子进程有自己的task_struct结构和pid,同时复制父进程其它资源(用户空间、文件描述符集)。2.复制进程的实现方式当我们需要复制一个进程时,我们就去调用fork()这这个函数,fork()这个函数就会去陷入内核去多复制一个pid出来,此时这个pid下的进程执行的程序就是子进程的。3.写实拷贝fork()是一个开销十分大的系统调用,这些开销并不是所有的情况下都是必须的,比如某进程fork

2020-07-22 19:24:38 371

原创 不定长顺序表

一、创建顺序表结构体1、创建一个结构体,用来储存数据#define TRUE 1#define FALSE 0#define INIT_SIZE 10typedef int ElemType;typedef int (*Compare)(ElemType,ElemType);typedef struct SqList{ ElemType *data; int length;...

2020-01-30 22:48:24 184

原创 C语言下的带头节点的顺序表

1、创建顺序表的结构体1、创建一个大小为10的顺序表#define LISTSIZE 10#define TRUE 1#define FALSE 0typedef int ElemType;typedef int(*Compare)(ElemType,ElemType);typedef struct SqList{ ElemType data[LISTSIZE]; int l...

2020-01-28 21:09:35 655

原创 C语言用顺序表实现的2048小游戏源代码

使用顺序表来实现的2048小游戏一、构造结构体1、构造一个大小为十六顺序表结构体#define DATA 16typedef struct Node{ int data[DATA]; int length;}Node,*NodePtr;二、顺序表的初始化1、以下代码是顺序表初始化开辟64个字节大小的空间void Init2048(NodePtr sizestrlen){...

2020-01-28 17:26:49 1801 3

原创 内存泄漏

内存泄漏为什么会有内存呢?答:当你申请了一个动态内存时,你使用完之后却没有释放那个动态内存,此时就产生了内存泄漏。而在我们生活中也有许多的内存泄漏,当你买的手机不管是64G、128G的内存。在使用一段时间后就会产生卡顿现象,那个时候你就会感觉是你的手机内存不够了,就会产生卡顿的现象。其实并不是你的手机内存不够,而是你的手机产生了内存泄漏。而解决这个问题最好的方法就是把你的手机关一下机就好了。...

2019-10-25 16:56:17 144

原创 数组

数组是什么?数组:就是有限个同类数据放在一起的命名,数组是保存在内存上的一段连续数据。数组的类型有哪几种呢?1、数字数组就是有限个数字保存在同一个数组名中的数组,我们用代码看一下数字数组吧!int arr[10]={1,2,3,4,5,6,7,8,9,10}; for(int i=0;i<10;i++) { printf("%d ",arr[i]); }2、字符串数...

2019-10-23 23:01:26 125

原创 指针的解引用与野指针相关问题

指针的解引用在指针中只有解引用才能改变定义的值。在功能函数中想要改变值必须要传指针和解引用才行,缺一不可。以下是几种错误的指针使用方法1.没有传指针也没有解引用void Swap_err1(int i,int j) //此函数是既没有传指针也没有解引用{ int temp; temp =i; i = j; j = temp;}2.传了指针但是没有解引用void Sw...

2019-09-27 15:31:27 393

原创 C语言 栈

栈是计算器语言里数据储存类型一种叫法,他应用在许多语言上面。今天我们就以C语言来了解栈。栈主要是用来储存局部变量的,在数组上面表现为数组越界。在数组定义时,假如定义了10个常量,存储是内存给它分配了10个常量的位置,可是你输入了11个常量,其中第11个常量就产生了越界行为。为什么会这样呢?这主要是栈的特性产生的,栈是一个先进后出的特性储存类型。 栈就像是一个无顶的长条框一样,其中长条框上...

2019-08-06 12:21:02 186

原创 进制转换选择题简便方法

大家好,今天我们要写的是一个选择题进制转换的简便方法。先来一个二进制转十进制吧,比如0011 1010如何转十进制呢?0011 1010 ->> 1×2 ^ 5 +1×2 ^ 4 +1×2 ^3 +0×2 ^2 +1×2 ^1+0×2 ^0 =58同理把十六进制152转成八进制呢?152 ->> 1×16^2 +5×16 ^1+2×16 ^0 =338 -&g...

2019-07-17 19:50:22 730

空空如也

空空如也

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

TA关注的人

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