自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一起学习

好记性不如烂笔头,脑子记不住了,用纸写下来。。。

  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 Nginx配置、使用

Nginx配置文件详解。

2024-02-27 21:59:43 821

原创 nginx概述

nginx-1.22.1版本有198427行c代码(包含头文件)。

2024-02-27 21:58:19 817

原创 查看uwsgi统计信息

需要有配置:stats = 0.0.0.0:9191 开启统计端口这样curl 127.0.0.1:9191就会获取当前uwsgi的统计信息可用通过统计信息查看uwsgi的状态,比如如果uwsgi繁忙,可以通过这个看看。可以看到哪些进程,哪些core在处理信息。curl 127.0.0.1:9191 返回的信息"load":0,"uid":0,"gid":0,"locks":["user 0":0},"signal":0},},"timer":0},},"cron":0},

2024-02-27 21:53:25 440

原创 uwsgi剖析

2023版uwsgi,包含119334行c代码,12w代码量级。

2024-02-27 21:50:21 361

原创 uwsgi安装、调试

worker进程去epoll,accept、read、处理。和陈硕提到的一个线程一个事件循环一样(memcached是一个线程一个libevent事件循环)。reactor风格是:主线程listen、epoll、accept,read、将read的内容解析后,给到线程池的消费者线程处理。你可以使用构建配置文件来自定义uWSGI服务器,配置文件位于 buildconf/ 目录中。出于历史原因,当你运行’make’的时候,会构建把Python作为唯一支持的语言的uWSGI(NOTE:不知道哪种更优。

2024-02-27 21:41:48 1032

原创 uwsgi概述和配置

使用c语言开发的wsgi服务器(不止wsgi)官方参考文档,英文官方参考文档,中文WSGI是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口。这是把服务器和服务程序分开uwsgi是服务器,调用python写的web应用程序或flask的python框架代码WSGI协议是对http协议的封装,是基于http协议的。比如env[“REQUEST_METHOD”]就是http的method。env[‘wsgi.input’]是消息体(如果是POST方法)

2024-02-27 21:29:11 1387

原创 git命令笔记

git clone https://github.com/qw632076202/study.git:克隆远程仓库到本地。git commit -am ‘说明’:将暂存区的东西全部提交到本地仓库,并添加修改说明。git show commitid:查看某个commitid的具体修改内容。git init :把这个目录变成git可以管理的仓库。git merge 分支名:合并某分支到当前分支。git add:把文件从工作区添加在暂存区。git blame 查看谁修改的。git status:查看状态。

2024-02-27 21:17:38 1201

原创 c调用python

【代码】c调用python。

2024-02-27 21:07:58 425

原创 安装python包

文章目录参考安装源码包pip使用常见问题参考花了两天,终于把 Python 的 setup.py 给整明白了Python打包分发工具setuptools使用教程安装源码包python setup.py install。❝该命令会将当前的Python应用安装到当前Python环境的”site-packages”目录下, 这样其他程序就可以像导入标准库一样导入该应用的代码了。❞pip使用pip download peewee --proxy http://ip:port -i htt

2024-02-27 21:05:53 783

原创 python3一个给文件所有函数加装饰器的方法

【代码】python3一个给文件所有函数加装饰器的方法。

2024-02-26 17:57:04 329

原创 基于python协程库谈协程

文章目录1、协程和线程的区别线程协程2、Python的两个协程库2.1 gevent2.2 asyncio2.3 两个方法的区别2.4 从两个方法看协程的特点迭代器,生成器1、协程和线程的区别线程操作系统自动调度线程间切换需要陷入内核(在内核态切换),线程上下文规模比协程重,切换线程更费时协程用户程序自主切换协程,不由操作系统调度协程上下文比线程轻量,切换速度更快,并且不会陷入内核,开销更小。上下文的轻量体现在哪?线程上下文是标准的进程上下文,包含的信息比较多,比如:cpu相关寄存

2024-02-26 17:51:12 343

原创 python解释器剖析及其安装

py解释器 = py编译器 + py虚拟机。

2024-02-26 17:46:04 335

原创 python2历史垃圾回收问题

python2使用引用计数来进行垃圾回收,但是循环引用会导致无法回收。要解决这个问题,必领引入其他的拉圾收集技木来打破循环引用,Python中引入了主流垃圾收集技术中的标记-清除和分代收集两种技术来填补其内存管理机制中最后的也是最致命的漏洞。标记-清除来区分和解除循环引用分代收集以空间换时间,提高标记-清除(垃圾回收)的效率。所以Python的gc模块就是实现“标记-清除”和“分代收集”的垃圾回收器。

2024-02-26 17:43:37 452

原创 python2包安装工具及一些问题

easy_install 是 Python 的一个旧的包管理工具,它是 setuptools 包的一部分。虽然现在大多数情况下都推荐使用 pip,但你仍然可以使用 easy_install 来安装 Python 包。你需要安装一个旧版本的 setuptools,这个版本需要是 Python 2 兼容的。安装好后,默认是名为pip2的工具。需要升级setuptools。

2024-02-26 17:39:42 353

原创 python性能分析、debug工具

cprofile如果你的python脚本执行很慢,有很多种方法对它的性能进行分析,比如cProfile就很好。如果你想对正在运行的python进程进行性能分析,cProfile则无能为力,因为程序已经在运行,如果是生产环境,不可能为了配合你分析性能而重新启动程序。Py-spy可以对正在运行的python进程进行分析,其原理是获取调用堆栈,在linux系统下,通过process_vm_readv,在mac下使用vm_read,在windows上使用ReadProcessMemory。

2024-02-26 17:35:38 1834 1

原创 pip通过指定源安装python包

使用默认的源安装比较慢,可以指定其他源安装。

2024-02-26 16:22:47 362 1

原创 Windows(win10为例)下gcc编译器安装、使用

在“编辑环境变量”对话框中点击新建,并将复制的路径(C:\mingw64\mingw64\bin)粘贴在其中。输入gcc -v(该命令是查看gcc的版本),如果有下图输出,表示成功。在“环境变量”-“系统变量”找到“path”这一栏,左键双击,会看到。在之前解压的目录下找到一个bin目录(存放gcc.exe文件的目录)复制该路径名:(C:\mingw64\mingw64\bin)在桌面“我的电脑”右键“属性”,会出现下图设置界面。在弹出的“系统属性”对话框中点击“环境变量”切换到上级目录:cd …

2024-02-26 16:07:32 5553 1

原创 一种python延时queue的实现方式

一种python延时queue的实现方式

2022-09-12 16:39:29 587 1

原创 【javaweb】js捕捉键盘事件和按键键值的方法

keycode 8 = BackSpace BackSpacekeycode 9 = Tab Tabkeycode 12 = Clearkeycode 13 = Enterkeycode 16 = Shift_Lkeycode 17 = Control_Lkeycode 18 = Alt_Lkeycode 19 = Pausekeycode 20 = Caps_L...

2020-01-12 13:16:45 350

原创 【c++】一些头文件,及在linux和windows下的区别

使用pow()函数,abs()函数,包含头文件<cmath>这在linux和windows的c++都是一样的使用int64_t等定义时,linux使用stdint.h,而windows可以使用cstdint

2019-12-30 20:47:06 1648

原创 【c++】STL之set用法总结

介绍set和multiset会根据特定准则将元素自动排序(从小到大)。两者的不同之处在于multiset允许元素重复而set不允许。所以不能直接改变元素值,因为这样会打乱原本正确的顺序。因此要改变元素值必须先删除旧元素,再插入新元素。C++ STL中标准关联容器set, multiset, map, multimap内部采用的就是一种非常高效的平衡检索二叉树:红黑树,也成为RB树(Red-...

2019-12-30 15:00:24 240

原创 【c++】STL之list用法总结

介绍list的内部构造完全不同于array,vector或deque。list就是双向链表。与之相似的forward_list是单向链表,可以理解为forward_list是一个行动受限的list,凡是list没提供的功能,forward_list也不提供,forward_list的优点是内存用量少,行动也略快速。list不支持随机访问。如果你要访问第五个元素,就得顺着串链爬过前四个元素,...

2019-12-29 11:47:27 276

转载 【c++】STL之string用法总结

转载自:https://blog.csdn.net/qq_42659468/article/details/90381985介绍String类:按照类的方式进行动态管理字符串底层:是一种顺序表的结构,元素是char类型的字符用法1 头文件#include <string>2 string类的常用构造函数:string str——构造空的string类对象,即空字...

2019-12-27 16:01:17 185

原创 【c++】STL之unordered_map用法总结

介绍unordered_map和map类似,都是存储的key-value的值,可以通过key快速索引到value。不同的是unordered_map不会根据key的大小进行排序存储时是根据key的hash值判断元素是否相同,即unordered_map内部元素是无序的,而map中的元素是按照二叉搜索树存储,进行中序遍历会得到有序遍历。所以使用时map的key需要定义operator<...

2019-12-27 14:08:13 1983

转载 【c++】STL之vector用法总结

转自:http://www.cnblogs.com/zhonghuasong/p/5975979.html介绍vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。本质讲,vector使用动态分配数组来...

2019-12-27 11:52:41 124

原创 【c++】使用cmake编译jsonapp的问题

在C语言的头文件中加入如下代码:#ifndef _FUN_H#define _FUN_H#include <stdio.h>#ifdef __cplusplusextern "C" {#endif void fun(void);#ifdef __cplusplus}#endif#endif...

2019-12-26 16:35:29 966

原创 【c++】linux中使用string,报错:string不是std的成员

在linux中使用string时,报错string不是std的成员#include "fun.h"#include <string.h>int main(void){ // fun(); std::string str="nihao"; printf("%s",str.c_str());}后来在#include <string.h>之前加入#in...

2019-12-26 15:01:17 3475

转载 【linux】Linux内核的整体架构

转载至–蜗窝科技,源地址链接:http://www.wowotech.net/linux_kenrel/11.html1. 前言本文是“Linux内核分析”系列文章的第一篇,会以内核的核心功能为出发点,描述Linux内核的整体架构,以及架构之下主要的软件子系统。之后,会介绍Linux内核源文件的目录结构,并和各个软件子系统对应。注:本文和其它的“Linux内核分析”文章都基于如下约定:a)...

2019-12-24 17:08:19 113

原创 【linux】shell,makefile,cmake,antomake配置工具

之前在看GitHub项目时,不知道怎么编译,主要感觉项目文件比较杂乱,还有很多没见过的文件。后来发现这些项目很多都是用cmake,antomake来管理的,运行里面的configure,和make就能很方便的编译。所以为了明白那些项目的结构,就不得不研究一下相关的自动编译工具。makefile这个不用多说,主要需要了解下它的语法。makefile文件好像一般不需要自己编写,由下面两种工具来生...

2019-12-23 21:46:03 459

原创 【linux】Linux的静态、动态链接库的创建和使用以及编译相关

静态链接库的创建g++ -c Math.cppar -crv libmath.a Math.o静态链接库的使用如下,直接将其当源码编译gcc main.c libportaudio.a -o YOUR_BINARY遇到多线程和c++11的还要加额外的编译选项-pthread和-std=c++11动态连接库的创建gcc -fPIC -shared -o lib动态库名.so x...

2019-12-23 21:45:57 153

原创 【c++】JSON的操作

  说到http协议那就离不开json数据的解析了,那么在C++中如何对json数据进行解析呢?博主在这里使用jsoncpp来解析json数据。  jsoncpp 主要包含三种类型的 class:Value、Reader、Writer。jsoncpp 中所有对象、类名都在 namespace Json 中,包含 json.h 即可。具体可查看网上资料大致总结:namespace Json...

2019-12-23 21:45:28 118

原创 【linux】正点原子linux教程学习

  最近看了正点原子的linux教学视频,感觉讲的挺不错,简单来整理一下,对此有个印象。linux移植三大部分ubootlinux内核(包含设备树)根文件系统裸机代码  视频教程中讲了nxp的imx6ull的soc(原来的freescale下面的产品,后来被nxp收购了,该soc使用的时arm内核,arm v7架构,最高主频800mhz,目前公司使用的nova的cpu也是完全相同的...

2019-12-23 21:43:04 5809 2

转载 转载:使用nat123通过自己的电脑搭建一个网站

转载自someblue的博客nat123的配置:到这个网站下载软件 http://www.nat123.com/Pages_2_32.jsp打开软件,注册个帐号登录帐号,软件是个扣扣那样的界面,在下方有个添加映射的选项,没错,使劲戳进去设置内容,其实上面吐槽里有一个连接已经介绍了Tomcat下,nat123的设置了,这里再简述一下吧应用类型选择80(http)网站...

2019-05-19 16:36:51 365

原创 【javaweb】css课堂笔记

css笔记一、css的简介1、什么是css层叠样式表,css是对html进行样式修饰语言层叠:就是层层覆盖叠加,如果不同的css样式对同一html标签进行修饰,样式有冲突的部分应用优先级高的,不冲突的部分共同作用样式表:就是css属性样式的集合 2、css的作用(1)修饰html的 使其html样式更加好看(2)提高样式代码的复用性(3)html的内容与样式相分离 便于后期维护...

2019-04-30 16:04:45 149

mingw64.zip

windows下的gcc安装包

2024-02-26

传感器融合-PPT英

传感器融合-PPT英,香港科技大学的姿态融合算法的PPT讲解

2018-03-09

空空如也

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

TA关注的人

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