自定义博客皮肤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)
  • 收藏
  • 关注

原创 NDK中JAVA接口参数类型与C/C++类型的转换处理总结

1.Java,C++和JNI中自定义类型对应关系2.具体类型的转换和方法在以下情况需要Java类型与本地类型(C++类型)之间的转换:java方法里面将参数传入本地方法; 在本地方法里面创建java对象; 在本地方法里面return结果给java程序。下面分两种情况来进行讨论:一.Java原始类型:原始类型从Java程序中传到本地方法中的原始类型可以直接使用,也就是说...

2019-07-31 19:32:41 282

转载 ZooKeeper使用场景

 一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下:  场景一...

2019-07-31 15:11:23 212

原创 C++类中将成员函数设置为线程处理过程的一点使用技巧

C++类中只有静态成员函数才能设置为线程的处理过程函数,但是此时静态成员函数只能调用类的静态成员函数和方法,这对调用类中的方法和成员变量造成了很大的局限性。那么如何解决这个问题呢?下面介绍一种普遍使用的编程技巧!//.h文件#ifndef CCONTROLMANAGER_H_#define CCONTROLMANAGER_H_#include"CManagerBase.h"cl...

2019-07-30 16:36:20 497

原创 Ubuntu系统下ZooKeeper的安装配置

安装之前请首先安装JAVA!1.下载地址https://archive.apache.org/dist/zookeeper/zookeeper-3.3.3/2.安装配置解压文件并移动到指定安装路径:tar -zxvf zookeeper-3.3.3.tar.gzmv zookeeper-3.3.3 /usr/local/zookeeper设置环境变量:expo...

2019-07-28 18:20:17 864

原创 O'Reilly Media, Inc.介绍

1.O'Reilly Media, Inc.是什么?O'Reilly Media,Inc.是世界上在UNIX、X、Internet和其他开放系统图书领域具有领导地位的出版公司,同时是联机出版的先锋。从最畅销的《The Whole Internet User's Guide and Catalog》(互联网用户指南和目录)(被纽约公共图书馆评为二十世纪最重要的50本书之一)到GNN(最早的In...

2019-07-28 15:06:58 1361

原创 Linux多线程中fork()调用的相关问题总结

1.某个线程调用fork()函数:在一个多线程程序中的某个线程调用了fork函数,那么子进程只会拥有一个执行线程(调用fork函数的线程),其他"已经"创建的线程将不会复制给子进程,子进程多线程的情况是在调用fork函数的子线程之后调用pthread_create函数实现的。2.调用fork函数之后锁的继承:由fork函数创建的子进程会继承父进程的锁及其状态,但子进程可能不清楚从父进程...

2019-07-25 19:09:12 636

原创 LRU算法C++实现

1.算法概述LRU算法(Leaset Recently used),或者说缓存调度算法。对于软件层面实现的缓存来说,其主要针对的是对磁盘上具有结构性组织的大型文件数据的随机读取。如果程序需要从磁盘上某个存放了一亿条数据的文件中读取id=xxx的某条数据,并且这条数据会被多次访问到(很好的满足局部性原理),如果每次都是从磁盘上查询并读取,那么程序的性能将会非常的低。试想,如果我们在内存中维护一段...

2019-07-25 16:42:33 3564 1

原创 Windows系统睡眠和休眠的区别

通常有三种方式让电脑休息:关机、休眠和睡眠。这三种方式有什么区别,这里简单介绍一下。关机是台式机最常用的操作,关机时会结束所有运行的程序,不保存电脑状态,开机后的状态跟关机前的状态不一样。而休眠和睡眠主要用在笔记本上,它们的好处就在于,“关掉”电脑之前会把电脑的状态保存下来,唤醒电脑时恢复之前的状态,原来打开的程序和文档都还在。那休眠和睡眠又有什么区别呢?1.休眠模式休眠(Hibernat...

2019-07-22 19:12:25 1703

原创 阻止屏保运行、显示器和系统待机

1.阻止屏幕保护程序运行使用Winodws API函数SystemParameterInfo()来关闭屏幕保护程序。代码如下:#include<Windows.h>void PreventSetScreenSaver(){ bool active = false; SystemParameterInfo(SPI_SETSCREENSAVEACTIVE, ...

2019-07-22 18:59:05 546

原创 Linux下socketpair使用总结

1.socketpair函数:#include <sys/types.h>#include <sys/socket.h>int socketpair(int d, int type, int protocol, int sv[2]);socketpair函数创建一对无名的相互连接的套接字。返回值:成功返回0,创建好的套接字分别为sv[1]和sv[2];否...

2019-07-21 11:43:03 334

原创 C语言中常用的字符串处理函数总结

1.char *gets(char *s)#include<stdio.h>功能:从标准输入读入字符,并保存到s指定的内存空间,直到出现换行符或读到文件结尾为止;参数:s:字符串首地址返回值:成功:读入的字符串 失败:NULLgets(str)与scanf(“%s”,str)的区别:gets(str)允许输入的字符串含有空格scanf(“%s”,str...

2019-07-12 11:14:37 191

原创 《Windows PE权威指南》第16章补丁工具程序bind.asm的错误修改

当直接编译运行bind程序的时候发现目标程序打完补丁之后无法正常运行。看汇编源码终于找到了问题所在,本文找出了源程序的一个函数编写的错误并给出了正确写法。改正之后经bind程序打完补丁的目标程序可以正常运行。1._getValidHeadSize函数原汇编代码:;--------------------------------------; 获取目标PE头的数据的有效长度;-----...

2019-07-10 15:26:32 197

原创 leetcode刷题(一)

1.判断两颗二叉树是否相等struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} };//判断二叉树是否相等的函数bool isEqual(TreeNode *T1, TreeNode *T2){ ...

2019-07-09 16:40:29 105

原创 windows系统API之GetOpenFileName简单使用实例 C++和汇编code

1.C++程序:#include<Windows.h>#include<commdlg.h>char szFilter1[2][16] = { "Excutable Files", "*.exe;*.com" };char szFileNameOpen2[MAX_PATH] = { 0 };int main(int argc, char *argv[])...

2019-07-06 17:07:00 1863

原创 对一个补丁工具程序的技术细节分析(WIN32汇编)

本文研究的是在目标PE中新增加一个节,并将可执行代码附加到该节中的技术。补丁工具中对文件头部做的修改主要包括以下字段:SizeOfHeader、SizeSofImage、AddressOfEntryPoint和NumberOfSections。补丁程序创造空间最好的做法是:按照PE数据结构的规则新增加一个节,然后将这个节有机的融合到PE文件中。为PE文件新增加一个节的空间,只需要扩充文件尾...

2019-07-06 16:35:50 369

原创 Android Studio3.0环境下NDK开发

这里我只进行一般的NDK项目构建流程,至于每一步的原理和相关工具的使用细节不做深入的探讨,这些深入的主题留到以后的文章再做进一步的分析讲解和复习。初始项目界面如下所示:第一步首先在com.example.ndkdemo目录下新建一个.java文件:在新建的NdkDemo.java文件中写入需要提供java调用的native接口:在Terminal终端中将当前目录切换到...

2019-07-05 16:04:58 119

原创 Android.mk和Application.mk文件使用整理总结

1.Android.mk文件1.简介:Android.mk文件用来告知NDK Build 系统关于Source的信息。 Android.mk将是GNU Makefile的一部分,且将被Build System解析一次或多次。所以,请尽量少的在Android.mk中声明变量,也不要假定任何东西不会在解析过程中定义。Android.mk文件语法允许我们将Source打包成一个"modules"...

2019-07-05 13:22:20 1829

原创 windows系统下远程shell实现 C++

1.实现一代码#include<Windows.h>#include<stdio.h>#include<stdlib.h>#include<string>#include<string.h>std::string ExeCmd(std::string pszCmd){ // 创建匿名管道 SECURITY_ATT...

2019-07-01 18:09:40 1019

空空如也

空空如也

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

TA关注的人

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