自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 windows启动的celery如何查看celery的worker

另外,如果您希望在运行Celery时同时查看日志输出,可以在命令中添加`--loglevel=<loglevel>`选项来设置日志级别,例如 `info`、`warning`、`debug` 等。运行上述命令后,Celery会尝试与已启动的工作进程通信,并返回它们的状态信息,包括工作进程的PID、启动时间、任务数量等。在Windows上启动的Celery中,可以使用`celery -A <app> status`命令来查看当前活动的Celery工作进程(worker)的状态。

2023-08-09 11:04:30 572

原创 vue代码中访问一个链接拉取图片

1. **异步加载图片:** 在Vue中,你可以使用`<img>`标签来加载图片,确保将`src`属性设置为图片链接。6. **图片格式选择:** 根据图片的特性,选择适当的图片格式。2. **使用懒加载库:** 你可以使用像`vue-lazyload`这样的库来实现图片懒加载。7. **分批加载:** 如果页面中需要加载多个图片,可以考虑将它们分成几批进行加载,以避免一次性加载过多图片导致速度缓慢。4. **使用CDN:** 如果你有可能,将图片存储在CDN上,这将加速全球范围内的图片加载。

2023-08-09 10:58:02 388

原创 Nginx配置,优化前端代码中访问链接拉取图片的速度

7. **使用Nginx缓存模块:** Nginx提供了缓存模块,你可以使用它来缓存动态生成的内容或者静态资源,以减少服务器负载和提高速度。1. **启用Gzip压缩:** 在Nginx配置中启用Gzip压缩可以减小传输的数据量,加快图片加载速度。2. **设置缓存:** 使用Nginx配置来设置静态资源缓存,以便在用户再次请求时可以从缓存中加载图片。6. **启用SSL加密:** 如果你的网站使用HTTPS,确保SSL配置正确,以提供安全的加密通信。请根据你的具体需求和环境进行适当的调整。

2023-08-09 10:54:09 1054

原创 https单向认证双向认证

        /etc/pki/ca-trust/extracted/openssl/etc/pki/tls/certs/ln -s  /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crtca-bundle.trust.crt1

2018-06-06 09:34:30 383

转载 @staticmethod和@classmethod的区别

https://blog.csdn.net/qq_15037231/article/details/77943109

2018-06-06 09:32:37 254

转载 shell脚本中的条件测试if中的-z到-d的意思

shell脚本中的条件测试if中的-z到-d的意思 [ -a FILE ]  如果 FILE 存在则为真。  [ -b FILE ]  如果 FILE 存在且是一个块特殊文件则为真。  [ -c FILE ]  如果 FILE 存在且是一个字特殊文件则为真。  [ -d FILE ]  如果 FILE 存在且是一个目录则为真。  [ -e FILE ]  如果 FILE 存在则为真。  [ -f ...

2018-06-01 16:27:51 259

转载 iscsi的使用

转载 2013年05月20日11:06:092783iSCSI Target 编译安装过程1. 解压:tar zxvf iscsitarget-1.4.18.tar.gz2. cd iscsitarget-1.4.183. Linux2.6.32的内核太新了最新的iSCSI Target版本1.4.18还没有支持,网上有高手做了相应的补丁,于是打上补丁 patch -p1 &lt;iscsitar...

2018-06-01 16:26:15 917

原创 dd命令读写数据

 dd dd if=从何处读取数据 of=写入何处 /dev/disk/by-path

2018-06-01 16:25:24 6835

转载 什么是网关,路由,dns,通俗讲解。

什么是网关,路由,dns?计算机主机网关的作用是什么?假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同

2017-01-20 09:51:16 266

转载 C语言编程中实现输入密码回显星号

众所周知,一个良好的密码输入程序是在用户输入密码时不显示密码本身,只回显星号。或者,在安全性要求更高的某些程序中,什么都不显示。那么,在C语言中如何实现它呢? getc()和getchar()函数想必大家都经常用到,但它们都在输入的同时显示输入内容,并由回车终止输入。为了不显示输入内容,我们调用另外一个函数getch(),它包含在头文件中。该函数可以在输入的同时不显示输入内容,并在

2017-01-19 21:57:51 1093

转载 SQLite的SQL语法

SQLite库可以解析大部分标准SQL语言。但它也省去了一些特性并且加入了一些自己的新特性。这篇文档就是试图描述那些SQLite支持/不支持的SQL语法的。查看关键字列表。如下语法表格中,纯文本用蓝色粗体显示。非终极符号为斜体红色。作为语法一部分的运算符用黑色Roman字体表示。这篇文档只是对SQLite实现的SQL语法的综述,有所忽略。想要得到更详细的信息,参考源代码和语法文件“

2017-01-18 22:40:54 203

转载 C语言——系统函数和库函数的区别

系统调用:是操作系统为用户态运行的进程和硬件设备(如CPU、磁盘、打印机等)进行交互提供的一组接口,即就是设置在应用程序和硬件设备之间的一个接口层。可以说是操作系统留给用户程序的一个接口。再来说一下,linux内核是单内核,结构紧凑,执行速度快,各个模块之间是直接调用的关系。放眼望整个linux系统,从上到下依次是用户进程->linux内核->硬件。其中系统调用接口是位于Linux内核中的,如果再

2017-01-17 21:43:29 677

转载 文件操作的不带缓冲和带缓冲的区别是什么!

以 ssize_t write(int filedes, const void *buff, size_t nbytes)和size_t fwrite(const void *ptr, size_t size, size_t nobj, FILE *fp)来讲讲自己对unix系统下带缓存的I/O和不带缓存的I/O的区别。首先要清楚一个概念,所谓的代缓存并不是指上面两个函数的buff参数,而是指un

2017-01-17 21:41:00 575

转载 回调函数的作用

1.回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数。2.回调函数就相当于一个中断处理函数,由系统在符合你设定的条件时自动调用。为此,你需要做三件事:1,声明;2,定义;3,设置触发条件,就是在你的函数中把你的回调函数名称转化为地址作为一个参数,以便于系统调用。3.所谓回调函数就是按照一定的形式由你定义并编写实现内容,当发生某种事件

2016-12-05 22:00:35 357

转载 数组和指针的区别

发现好多人搞不清楚数组和指针的区别。数组申明时编译器自动分配一片连续的内存空间指针申明时只分配了用于容纳指针的4字节空间作为函数参数时,数组参数和指针参数等价数组名在多数情况下可视为常量指针,其值不能改变指针的本质是变量,保存的值被看做内存中的地址。名字上的区别:数组名通常情况下被作为常量指针,只能作为左值出现,对于数组 [cpp] view pla

2016-12-05 21:58:23 324

转载 绝对地址赋值与转换为函函数地址

要对绝对地址0x100000赋值,我们可以用      (unsigned int  * ) 0x100000 = 1234;      那么要是想让程序跳转到绝对地址是0x100000去执行,应该怎么做?     *((void (*)( ))0x100000 ) ( );    首先要将0x100000强制转换成函数指针,即:     (void (*)())0x10000

2016-12-04 13:03:48 290

转载 memcpy函数实现及其优化

实现1:《高质量c++,c编程指南》[cpp] view plaincopyvoid *mymemcpy(void *dst,const void *src,size_t num)  {      assert((dst!=NULL)&&(src!=NULL));            //assert(des>=src+num|

2016-12-04 13:01:07 597

原创 malloc,ralloc,calloc

malloc() malloc()在内存的动态存储区中分配一块长度为size字节的连续区域。参数size为需要的内存空间的长度,返回该区域的地址 calloc() calloc()与malloc相似,参数sizeofElement为申请地址的单位元素长度,numElements为参数个数 ,由于malloc可以很方便的实现calloc的功能,所以我们一般不去使用calloc

2016-12-04 12:41:00 230

转载 malloc实现原理

malloc()是C语言中动态存储管理 的一组标准库函数之一。其作用是在内存的动态存储区中分配一个长度为size的连续空间。其参数是一个无符号整形数,返回值 是一个指向所分配的连续存储域的起始地址的指针。   动态内存分配 就 是指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。动态内存分配不像数组等静态内存分配方法那样需要预先分配存储空间,而是由系统根据 程序的需要即时分配,且

2016-12-02 22:01:41 336

转载 多维指针

void main2(){ int i = 0; //指针数组 char * p1[] = {"123", "456", "789"}; //二维数组 char p2[3][4] = {"123", "456", "789"}; //二维内存 char **p3 = (char **)malloc(3 * sizeof(cha

2016-12-01 21:23:22 308

转载 gets函数和fgets函数

1、 gets函数 gets函数从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为‘\0’空字符,并由此来结束字符串。gets函数可以无限读取,不会判断上限,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。如果溢出,多出来的字符将被写入到堆栈

2016-12-01 21:21:51 560

原创 野指针和避免野指针的方法

何为野指针,随机指向一块内存的指针。不一定每次都产生段错误,因为它随机指向的地址可能被分配了内存。如何解决野指针,养成一下编码习惯:1,当一个指针没有指向时,置为NULL(空),NULL宏:#define NULL(void * )0,0地址对应的空间不允许进行任何操作。2,当往一个指针赋值的时候,一定要给指针分配空间,int *p = malloc(100);返回首地址,int *p = m

2016-11-30 22:10:25 409

转载 scanf怎样获取一个句子

首先明确 scanf的结束标志是空格和回车键,而gets的结束标志为回车键,输入字符串时,一般采用gets因此有下面两种方法可以在使用scanf时完整输入字符串1)利用strcat()函数来实现带空格字符串的输入,可以用字符串追加函数strcat()来连接每个单词。 Strcat()一般格式:char*strcat(char*dest,const char*src)

2016-11-29 19:25:03 221

转载 printf函数详解

首先直接描述printf函数中的“格式描述串”,它是由一系列的“格式转换说明符号”组成,格式转换说明符号的描述形式如下:%[+][-] 0 m[n][输出精度](1)形式字母:制定输出格式,如表d:十进制整型数i:十进制整型数x:十六进制整型数o:八进制整形数u:无符号十进制整形数c:单个字符s:字符串e:指数形式的浮

2016-11-27 20:40:11 298

转载 输入一个字符串,同时输入帧头和帧尾(可以是多个字符),将该字符串中合法的帧识别出来. 提示:帧头和帧尾分别是head和tail 字符串”asdheadhauboisoktail”中headhau

#include  #include    int head_flog = 0;//用于标记找到尾的标志  int tail_flog = 0;//用于标记找到头的标志    char *tail(char *s, char *b)//找到tail地址  {      int num = 0;//计数字符长度,和b比较      int len_b;      char *temp = b;//用

2016-11-26 22:40:35 520

原创 sizeof和strlen的区别

1.sizeof是运算符,strlen是string.h里面的函数2.sizeof计算时连带'\0',strlen计算时检索到'\0'停止3.sizeof可以用类型做参数,而strlen只可以用char *做参数4.数组做sizeof的参数不退化,传递给strlen就退化为指针了。

2016-11-25 23:00:49 224

转载 C语言中的位运算

C语言位操作(转) 在计算机程序中,数据的位是可以操作的最小数据单位,理论上可以用“位运算”来完成所有的运算和操作。一般的位操作是用来控制硬件的,或者做数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效率。C语言提供了位运算的功能, 这使得C语言也能像汇编语言一样用来编写系统程序。  位运算符C语言提供了六种位运算符:  & 按位与  | 按位或  ^ 按位异或  

2016-11-24 20:15:23 1861

转载 C语言位运算详解

C语言位运算详解    位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。  C语言提供的位运算符列表:  运算符含义描述  & 按位与      如果两个相应的二进制位都为1,则该位的结果值为1,否则为0  | 按位或      两个相应的二进制

2016-11-24 20:12:28 1111 1

转载 模块的封装(一):C语言类的封装

出处:[微知识]模块的封装(一):C语言类的封装    是的,你没有看错,我们要讨论的就是C语言而不是C++语言中类的封装。在展开知识点之前,我首先要重申两点:    1、面向对象是一种思想,基本与所用的语言是无关的。当你心怀面向对象,即便用QBasic也能写出符合       面向对象思想的代码,更不用说是C语言了。举一个反例来说,很多人初学C++

2016-11-21 23:02:31 361

转载 二进制原码、反码、补码

1.基础概念和计算方法在探求为何机器要使用补码之前, 让我们先了解原码, 反码和补码的概念.对于一个数, 计算机要使用一定的编码方式进行存储. 原码, 反码, 补码是机器存储一个具体数字的编码方式.1.1模的概念把一个计量单位称之为模或模数补码的模为10000 0000反码的模为1000 0000(从反码的定义也能够知道,即反码的运算不涉及符号位)模的解释在日常生活中,

2016-11-21 09:41:34 467

转载 c语言标准

K&R C1978年,丹尼斯·里奇(Dennis Ritchie)和Brian Kernighan合作出版了《C程序设计语言》的第一版。书中介绍的C语言标准也被C语言程序设计师称作“K&R C”,第二版的书中也包含了一些ANSI C的标准。K&R C主要介绍了以下特色:结构(struct)类型长整数(long int)类型无符号整数(unsigned int)类型把运算

2016-11-20 20:42:06 218

转载 c指针解读之左右法则

C指针声明解读之左右法则C语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则的英文原文是这样说的:  The right-left rule

2016-11-20 20:41:10 253

转载 现代通用编程语言简介

C:C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适

2016-11-19 22:18:09 747

转载 gdb详解

程序的调试过程主要有:单步执行,跳入函数,跳出函数,设置断点,设置观察点,查看变量。本文将主要介绍Linux下的强大调试工具是怎么完成这些工作的。之所以要调试程序,是因为程序的运行结果和预期结果不一致,或者程序出现运行时错误。调试的基本思想是:分析现象->假设错误原因->产生新的现象去验证假设1.gcc -g main.c要用gdb调试程序,必须在编译时加上-g选项,-g选项的作用是在

2016-11-18 22:23:26 195

转载 VIM快捷键大全

关键字: vim 前言Vim是一个超级牛的编辑器,可以说是专为程序员设计的编辑器,强大的有些不可思议 。不过其学习曲线稍显陡峭,前两天在网上找到一个小图表,比较全,如果对表中所列的命令学习熟悉以后,处理日常的文本就已经足够,所以贴出来,大家参考参考。Vim的牛B之处不在于其功能之繁多,更不在于其学习曲线之陡峭,而在于这些命令大都可以进行组合 ,比如,9yy命令表示复制9行内容,9表示要

2016-11-18 22:21:53 134

原创 C编程:n个人围坐从1到3报数,报到3的出去,算最后留下的是第几个

#include #define MAX 1000int main(){int i;int num;int temp;int count = 0;int a[MAX] = {0};printf("please input number:\n");scanf("%d",&num);temp = num;for(i

2016-11-16 22:19:49 466

转载 编写Makefile

关于程序的编译和链接  一般来说,无论是C还是C++,首先要把源文件编译成中间代码文件,在Windows下也就是 .obj 文件,UNIX下是 .o 文件,即 Object File,这个动作叫做编译(compile),一般来说,每个源文件都应该对应于一个中间目标文件(O文件或是OBJ文件)。然后再把大量的Object File合成执行文件,这个动作叫作链接(link)。  编

2016-11-14 20:57:24 113

转载 make工程管理器与Makefile

相比于gcc命令,通过make工程管理器编译程序则更加高效。GCC提供的Make是半自动编译,因为编译规则是人工编写的程序,将保存在Makefile文件中。Make工程管理器具有以下两个优点:  1.使用方便。通过命令即可根据Makefile中的编译规则对程序进行编译  2.调试效率高。make会对每个源文件的时间进行判断,只有被修改过的文件才会进行编译,大大减少了编译工作量 

2016-11-12 22:26:45 307

转载 gcc的三级优化

GNU编译器提供-O选项供程序优化使用:-O 提供基础级别的优化-O2 提供更加高级的代码优化,会占用更长的编译时间-O3 提供最高级的代码优化-O4 不优化,这是默认值不同的优化级别使用的优化技术也可以单独的应用于代码。 可以使用-f命令行选项引用每个单独的优化技术。1, 编译器优化级别1在优化的第一个级别执行基础代码的优化。 这个级别试图执行9种单独的优化功

2016-11-11 22:27:54 255

原创 11月9日学习内容:字符串数组

数组的逆序输出部分代码:len = strlen(str);for(k = 0; k {    temp = str[k];        str[k] = str[len - k - 1];str[len - k -1] = temp;}字符串数组的遍历for(i = 0; str[i] != '\0'; i++){}

2016-11-09 22:12:57 153

空空如也

空空如也

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

TA关注的人

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