自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Programmer小卫

故不积跬步,无以至千里。不积小流,无以成江海。

  • 博客(469)
  • 资源 (15)
  • 收藏
  • 关注

原创 Android 版本API对应表

android api

2022-11-08 15:59:26 6887 4

原创 android studio编译项目遇到的常见问题

编译SDK版本必须要>= targetSdkVersion > minSdkVersionminSdkVersion 必须要>= 所依赖的库的编译版本targetSdkVersion 目标运行版本。

2022-11-08 14:12:56 910

原创 C#实现http服务

【代码】C#实现http服务。

2022-09-19 22:42:35 2128

原创 Vue3+Ts各种错误整理

解决 Vue3项目编译出现 Could not find a declaration file for module 'module-name'. '/path/to/module-name.js' implicitly has an 'any' type

2022-08-05 15:01:00 1963

原创 Docker常用命令

#常用命令#docker kill $(docker ps -a -q) 杀死所有正在运行的容器#docker rm $(docker ps -a -q) 删除所有已经停止的容器#docker rmi $(docker images -q -f dangling=true) 删除所有未打 dangling 标签的镜#docker rmi -f <IMAGE_ID> 强制删除 无法删除的镜像#docker rmi -f $(docker images -q) 强制删除 无法删除的镜.

2022-03-26 00:47:46 1417

原创 openssl在mac下生成pkcs8证书

MacOS下openssl相关操作 openssl > genrsa -out key.pem 2048 生成2048字节 PEM格式的 RSA私钥 rsa -in key.pem -pubout -out app_public_key.pem 根据PEM格式RSA私钥生成公钥 pkcs8 -topk8 -inform PEM -in key.pem -outform PEM -out pkcs8.pem 转换成成pkcs8格式密钥 java使用 req -new -out ce..

2022-03-16 16:06:04 820

原创 Docker快速搭建Node.js Express运行环境

docker中包含三个概念 容器(Container)、镜像(Image)、仓库(Repository) ,我们可以在一台宿主机上创建 无数个容器用于运行 PHP、Node.js 等等服务, 这些容器都是以 镜像(Image) 为模板来创建的, 这些镜像统统存储与 仓库(Repository) 中。

2022-01-12 17:12:08 1774

原创 Node.js插件编写(9)-本地安全线程实现JS Promise

这篇文章来实现的是在C/C++插件中,实现Native Promise, 调用 Native Thread执行后台任务, 执行玩后台任务后,返回到JS前端, JS前端可以通过 await关键字等待返回。Promise实现原理下面一些封装是实现本插件的核心,没有什么文档具体只能去看源码案例分析。Napi::Promise::Deferred //Promise C/C++实现对象Napi::Promise::Deferred::Resolve() // 相对于js promise的resol

2022-01-07 16:59:18 3230

原创 Node.js插件编写(8)-插件代码通过Emit与js代码进行交互

我们在Node.js中经常用到的一个包是 events ,这个包下的 EventEmitter我们可以看到很多地方都用到了 , 基于这个事件机制我们可以在合适的新号到来的时候去做合适的事情。这种机制用在网络IO、文件读写、异步任务等等场景都非常合适。例如下面的代码const events = require('events');events.captureRejections = true;const ee1 = new events.EventEmitter();ee1.on('som

2022-01-06 16:34:47 1030

原创 Node.js插件编写(7)-异步AsyncWorker的代码实现

异步介绍我们在Node.js中经常用到异步机制, 比如异步改变一个文件的访问权限,然后任务完成之后我们收到一个回调通知:代码如下:import { chmod } from 'fs';chmod('chmod.txt', 0o775, (err) => { console.log('The permissions for file "my_file.txt" have been changed!');});原理实现这里我们用到了一个很重要的类,Napi::AsyncWo

2022-01-04 16:52:14 853

原创 Node.js插件编写(6)-导出类对象作为参数传递

前面几篇文章我们写了如何通过C++ 为Node.js 导出 自定义类对象 。 这篇文章我们才更进一步操作一些这个自定义类, 这篇文章我们的目的是 将自定义导出的类对象作为导出函数的参数传递。功能伪代码如下:MyObject obj1=New MyObject(11);MyObject obj2=New MyObject(22);Var ret=Add(obj1,obj2) ; //重点是这里我们将两个对象作为参数传递相加下面我们来编写插件实现代码插件导出类的C++代码 Pa...

2021-12-31 15:03:14 1491

原创 Javascript Symbol之迭代器让对象支持for..of遍历

首先我们以数组为例, 我们要知道迭代器迭代的原理,也就是为什么可以支持类似于 for....of的循环语法。迭代器遍历对象原理,看一下下面这个代码,我们发现了迭代器这个玩意,整个过程很类似for...of的过程,只不过我们没有去循环而是一次一次的调用 迭代器.next() const arr1=[1,2,3,4,5];let ite=arr1[Symbol.iterator](); //重要的是这个迭代器console.log(ite.next())//{ value: 1, done:

2021-12-31 14:15:59 322

原创 Javascript 正则扩展之dotAll模式

正则表达式中点 (.) 是一个特殊字符,它可以匹配除 换行符(\n)、回车符(\r)、行分隔符、段分隔符、四个字节的UTF-16字符外的任意字符。为了使点(.)可以匹配任意字符,ES9 引入新的修饰符s(dotAll模式),就是让(.) 可以匹配一切字符。代码一,ES9——dotAll模式之前采用\s 类匹配回车、换行等字符let html = ` <ul> <li> <a>C++编程思想</a> .

2021-12-31 12:22:16 772 1

原创 Node.js插件编写(5)-创建类原型以及类工厂

我们前一篇文章写过通过C++为node.js 编写函数工厂和对象工厂的实现 ,这篇文章我们进一步完善,通过Node.js插件 导出类原型, 以及导出一个类工厂函数。我们要让编写的插件导出的类支持new关键字 ,以及可以通过函数直接返回对象,具体js代码如下:var addon = require('bindings')('my_node_addon.node');//通过原型创建对象var obj1 = new addon.MyObject(11);console.log(obj1.va

2021-12-30 16:19:24 231

原创 Node.js插件编写(4)-函数工厂与对象工厂的实现

这篇文章我们通过通过nodejs插件完成 函数工厂和对象工厂的例子。首先看下面这段node.js代码,我们引用的my_node_addon插件需要导出createFunc函数 和 createObject函数, 并且 createObject函数返回的对象包含add和addCallback 两个加法函数var addon = require('bindings')('my_node_addon.node');//函数工厂var func=addon.createFunc...

2021-12-28 15:39:45 803

原创 Node.js插件编写(3)-普通函数和回调函数的实现

前两节我们讲述了node插件的基础入门,以及需要的环境, 这一节我们来尝试写一个复杂一点的插件, 通过Node-Api 实现插件导出普通函数和回调函数。

2021-12-28 14:05:21 729

原创 Node.js插件编写(2)-通过NAN编写简单插件入门

上一篇文章我们介绍了通过Node-Api的方式编写一个插件,并且导出一个函数hello, 这篇文章我们介绍另一种插件开发方式NAN,NAN是出现在Node-Api之前的一种插件开发方式,采用的也是C++的封装。读本文内容仍然需要有C/C++开发基础,如没有请忽略。环境准备Python 3.x环境Node.js 15.x+gcc 8.2.x /VC2022MacOS /Windows编写项目代码创建插件文件夹,并创建package.json文件内容如下,依赖中我们引用了na

2021-12-27 15:18:49 2111

原创 Node.js插件编写(1)-通过Node-Api编写简单插件入门

Node.js插件编写(1)-通过Node-Api编写简单插件入门

2021-12-24 15:55:00 1079

转载 c++: error: unrecognized command line option ‘-stdlib=libc++‘ while installing a node package

For those who are still having this problem, the below command worked for me on fish shell and macOS.env CC=clang CXX=clang++ npm install XXX

2021-12-22 16:43:05 1468

原创 ES11中的可选链等语法

我们介绍ES11新特性 这个新特性在判断空值的方面非常简单,相关语法如下。1、可选链语法(?.)obj?.prop // 如果存在prop则返回属性 obj?.[prop] // 根据obj是否存在prop来执行[]内的表达式arr?.[index] // 获取arr中的元素当index对应元素存在func?.(args) // func存在调用可选链相关语法//当函数存在时候调用函数var func=(x)=>{ console.log(x);};func?

2021-12-18 09:56:49 1353

转载 Automating MS-Office Applications

Office自动化操作 VC操作Office

2021-12-08 11:08:19 119

原创 golang TCP处理数据包粘包的代码,可直接使用

package mainimport ( "bytes" "encoding/binary" "fmt")const ( DEFAULE_HEADER = "[**********]" DEFAULT_HEADER_LENGTH = 12 DEFAULT_SAVE_DATA_LENGTH = 4)type Packet struct { Header string HeaderLength int32 SaveDataLeng.

2020-11-26 13:30:41 484

转载 母函数与排列组合

在谈论母函数问题之前,我们先看一个简单的问题描述:假如有两组数据(A,B)和(C,D),每组中选出一个构成一个组合,总共有几种选法?很显然总共有4种选法:AC,AD,BC,BD。而且很容易联想到这个式子(A+B)*(C+D)=A*C+A*D+B*C+B*D。式子中的几个乘积项就是上面的4种选法。假如把问题换一下:每组中选出一个或0个数据构成组合,总共有几种组合?那么结果就变成:{空},A,B,C,

2017-10-18 10:00:47 964

转载 关于冒泡排序复杂度O(n)

我在许多书本上看到冒泡排序的最佳时间复杂度是O(n),即是在序列本来就是正序的情况下。但我一直不明白这是怎么算出来的,因此通过阅读《算法导论-第2版》的2.2节,使用对插入排序最佳时间复杂度推算的方法,来计算冒泡排序的复杂度。1. 《算法导论》2.2中对插入排序最佳时间复杂度的推算  在最好情况下,6和7总不被执行,5每次只被执行1次。因此,    时间复杂度为O(n) 2. 冒泡排序的时间复杂度

2017-10-17 18:42:49 1732

转载 五大常用算法——分治法,动态规划,回溯法,分支界限法,贪心算法

分治算法一、基本概念   在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)……    任何一个可以用计算机求解的问题所需的计算时间都与其

2017-10-17 15:37:53 14856 2

转载 基数排序

基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的稳定性排序法。中文名

2017-10-17 11:12:34 791

原创 数学符号ln

ln在数学里表示的是以常数e(无理数,约等于2.71828...)为底的自然对数符号。即lnm=loge(m)其中,log (英语名词:logarithms)表示的是对数运算。当a^b=n时,也可表示为log(a)(n)=b。其中,a叫做“底数”,n叫做“真数”,b叫做“以a为底的n的对数”。 log(a)(n)函数叫做对数函数。

2017-10-13 17:29:29 6482

转载 算法导论------渐近记号Θ、Ο、o、Ω、ω详解

目录:1.渐近精确界记号:Θ(big-theta)2.渐近上界记号 :O(big-oh)3.渐近下界记号 :Ω(big-omege)4.非渐近紧确上界:o(小-oh)5.非渐近紧确下界:ω(小-omege)6.渐近记号Θ、Ο、o、Ω、ω关系7.参考资料1.渐近精确界记号:Θ(big-theta)  假设算法A的运行时间表达式T1(n)为:T1(n)=30n4+20n3+40n2+46n+100  

2017-10-13 16:48:41 2824

转载 算法运行时间

1 大部分程序的大部分指令之执行一次,或者最多几次。如果一个程序的所有指令都具有这样的性质,我们说这个程序的执行时间是常数。 logN  如果一个程序的运行时间是对数级的,则随着N的增大程序会渐渐慢下来,如果一个程序将一个大的问题分解成一系列更小的问题,每一步都将问题的规 模缩减成几分之一 ,一般就会出现这样的运行时间函数。在我们所关心的范围内,可以认为运行时间小于一个大的常数。对数的基数会影响这

2017-10-13 16:14:43 1209

转载 算法中这三个符号:Θ、Ω、Ο表示什么意思

ΘO(f(n)),给出了算法运行时间的上界,也就是最坏情况下的时间复杂度; Ω(f(n)),给出了算法运行时间的下界,也就是最好情况下的时间复杂度; Θ(f(n)),给出了算法运行时间的上界和下界,这里Θ(f(n))是渐近的确界,另外,并非所有的算法都有Θ(f(n)).

2017-10-13 09:57:17 20019 1

转载 狼图腾中五十句话

1、没有捕捉不到的猎物,就看你有没有野心去捕;没有完成不了的事情,就看你有没有野心去做。2、没有猎物我们就去寻找猎物,发现猎物我们就去追逐猎物。寻找、发现、追求、获得———这就是狼的生活要素。3、尽管面对上万只的黄羊,面对凶猛的老虎,我们都毫不退缩。但是面对人类的枪口,适当的转移是明智的。我们不缺乏成功的信念,但是我们绝不是痴心妄想只会送死的傻瓜。4、追逐猎物仅仅靠猛跑是不够的,尤其在对付大群猎物

2017-09-21 12:49:26 772

转载 狼道文化

狼是一种值得学习的动物,在狼的身上,有许多值得人们学习的精神。这些精神都是成功人士必备的精神,人生想要获得成功,就需要知道通向成功的密码,狼性,是你人生走向成功的唯一密码。目录1 狼道文化2 狼道文化剖析▪ 二 、强者心态▪ 三 、狼性忠诚风骨▪ 四 、目标追求;▪ 五 、狼性团队精神▪ 六 、组织和纪律▪ 七 、狼性智慧与谋略▪ 八 、准则及无畏▪ 九 、坚韧与耐性▪ 十 、100%执行▪ 十一

2017-09-21 12:41:21 650

原创 js解析php格式的表单到json对象

/** * JsonParse * Created by usher.yue. * User: usher.yue * Date: 17/9/7 * Time: 13:50 */class JsonConvert { /** *是否可合并 去除特殊类型和 日期类型 * @param value * @re

2017-09-08 13:19:00 1321

原创 利用js解析php的表单数据

利用js解析php的表单数据/** * JsonParse * Created by usher.yue. * User: usher.yue * Date: 17/9/7 * Time: 13:50 * 心怀教育梦-烟台网格软件技术有限公司 */var obj = { 'data[][classid][0]': '1000150097620084286', 'da

2017-09-07 21:50:11 712

转载 什么是僵尸进程?

可能很少有人意识到,在一个进程调用了exit之后,该进程 并非马上就消失掉,而是留下一个称为僵尸进程(Zombie)的数据结构。在Linux进程的5种状态中,僵尸进程是非常特殊的一种,它已经放弃了几乎所 有内存空间,没有任何可执行代码,也不能被调度,仅仅在进程列表中保留一个位置,记载该进程的退出状态等信息供其他进程收集,除此之外,僵尸进程不再占有 任何内存空间。僵尸进程的来由,要追溯到Unix,U

2017-09-01 12:38:22 792

原创 Zookeeper学习笔记2-------group创建、查询、删除

下面一段代码涉及到了 ZooKeeper 创建group、为group添加member、列出group下面的 member、递归删除group。  这里我引用的是 ZooKeeper 3.4.10 提供的jar包。GroupHelper.javaimport java.io.IOException;import java.util.List;import java.util.concurren

2017-08-18 17:22:00 3938

原创 ZooKeeper学习笔记1-----------安装启动

ZooKeeper是一套协作服务,主要用来构建分布式架构的应用,通过ZooKeeper我们可以安全的处理分布式应用下的局部故障问题。我们知道ZooKeeper就是Hadoop中的分布式协作服务组件。下面我们进入ZooKeeper的安装部署。安装Zookeeper https://zookeeper.apache.org/ 我们打开ZooKeeper的官方地址然后去下载响应的package ,我

2017-08-17 18:17:04 1112

原创 Node.js与PHP之间通过RSA算法实现签名验证

Node.js与PHP之间通过RSA算法实现签名验证做过web开发的同学都知道我们经常在接口间交互的时候为了防止数据伪造并 且保证安全性我们会采用签名的方式进行验证, 签名的算法我们一般选择RSA非对称加密算法。想了解更多签名与RSA算法知识可以去查阅PKCS#1、PKCS#7相关资料。笔者在做利用Node.js做单点登录的时候涉及到了Node.js项目中产生的签名,然后需要到PHP项目中去验签,

2017-08-01 10:15:00 1951

转载 Linux zombie进程详细解析

Linux僵尸进程详细解析 在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信号处理函数调用 waitpid()等待子进程结束,又没有显式忽略该信号,则子进程成为僵尸进程,无法正常结束,此时即使是root身份kill-9也不能杀死僵尸进 程。补救办法是杀死僵尸进程的父进程(僵尸进程的父进程必然存在),僵尸进程成为"孤儿进程",过继

2017-07-10 18:10:40 1613

转载 Linux 线程分离状态

线程的分离与结合    在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached)。一个可结合的线程能够被其他线程收回其资源和杀死;在被其他线程回收之前,它的存储器资源(如栈)是不释放的。相反,一个分离的线程是不能被其他线程回收或杀死的,它的存储器资源在它终止时由系统自动释放。线程的分离状态决定一个线程以什么样的方式来终止自己。在上面的例子中,我们采用了线程的默认属性

2017-07-10 17:45:04 596

my-node-addon.zip

node.js 插件编写 实现 普通函数和回调函数

2021-12-28

my_node_addon.zip

node.js NAPI插件编写Demo

2021-12-24

golang解析数字证书

golang解析数字证书 PKCS#1 PKCS#8格式的私钥

2017-05-20

Duilib360界面代码解析

每行代码注释 学习中积累下来帮助更多的人

2015-10-15

基于FFMPEG SDK流媒体开发1---解码媒体文件流信息

基于FFMPEG SDK流媒体开发1---解码媒体文件流信息 没有下载积分了 ,,都施舍点吧

2014-12-17

Lua库+测试代码已经编译好

继承好的Lua和环境 带测试代码 和Lua脚本

2014-12-09

Lua5.2编译好的动态库静态库

关于Lua5.2在VS2010下编译好的二进制库

2014-12-09

金山垃圾清理模块独立版本

金山开源编译出来的 ,非常的实用啊 不想用流氓软件的速速下载吧

2014-03-14

纯SDK写的俄罗斯方块

纯SDK写的俄罗斯方块,多关设置 ,以及游戏信息的存储 代码清晰。

2012-04-22

C++游戏开发1地图拼接

VC++游戏开发1地图拼接,WIN32 SDK编程 游戏

2012-04-17

html应用知识积累

学习html时候做的笔记 包含 大部分的html操作哦,,以html编写的文档

2012-04-06

解决JSP开发中的各种乱码问题

解决JSP开发中的各种乱码问题 2分积分不算多吧

2011-11-09

基于tcp的异步套接字客户端服务端通信

基于tcp的异步套接字客户端服务端通信,需要的就下载吧 1分不多哦

2011-11-08

VC 窗体F11全屏切换

VC 窗体F11全屏切换 VC6.0实现 需要的下载吧 1分。。赚点下载分

2011-08-07

空空如也

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

TA关注的人

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