摘要: Looper类:封装消息循环,并有一个消息队列(关键) Handler类:封装了消息投递,消息处理等接口 Looper.perpare() 1. sThreadLocal.set(new Looper)会在调用线程得局部变量中设置一个Looper(1.构造一个消息队列2.获得当前线程) new Lo 阅读全文
posted @ 2019-12-18 20:31 无解的不等式 阅读(357) 评论(0) 推荐(0) 编辑
摘要: Thread : canCallJava flag 表示这个线程是否使用JNI 阅读全文
posted @ 2019-12-18 19:56 无解的不等式 阅读(201) 评论(0) 推荐(0) 编辑
摘要: RefBase:含有内部类weakRef_Impl(影子对象),影子对象中有两个引用计数变量(强引用计数,弱引用计数) sp,构造的时候,强,弱引用计数均+1,析构的时候都-1 wp,构造的时候,弱引用+1,强引用不变,析构的时候弱引用-1,强引用不变 强引用计数=0:实际对象被delete 弱引用 阅读全文
posted @ 2019-12-18 13:35 无解的不等式 阅读(300) 评论(0) 推荐(0) 编辑
摘要: Java侧使用Native方法: 1.加载对应的JNI库 2.声明由native修饰的函数 java 函数找到jni函数的方法 1.静态注册:先通过函数名,找到后,保存函数指针 2.动态注册,registerNativeMethods()(在JNI_ONLoad中动态注册) JNI层调用Java方法 阅读全文
posted @ 2019-12-17 12:09 无解的不等式 阅读(388) 评论(0) 推荐(0) 编辑
摘要: Process::self() 1.打开binder 驱动 2.对返回的fd 使用mmap,为binder开辟内存空间保存数据。 defaultServiceManager(); 1.创建的是Bpbinder,handler = 0。(因为此时service 作为客户端与servicemanager 阅读全文
posted @ 2019-12-11 14:41 无解的不等式 阅读(367) 评论(0) 推荐(0) 编辑
摘要: C++对C语言的结构、联合、枚举 这3种数据类型进行了扩展。 1、C++定义的结构名、联合名、枚举名 都是 类型名,可以直接用于变量的声明或定义。即在C++中定义变量时不必在结构名、联合名、枚举名 前加上前缀struct、union、enum。 例如有如下头文件(head.h) 在C中使用的使用的方 阅读全文
posted @ 2019-06-17 16:02 无解的不等式 阅读(885) 评论(0) 推荐(0) 编辑
摘要: Q_PROPERTY(type name (READ getFunction [WRITE setFunction] | MEMBER memberName [(READ getFunction | WRITE setFunction)]) [RESET resetFunction] [NOTIFY 阅读全文
posted @ 2019-05-13 19:37 无解的不等式 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文件,包含以.开始的隐藏文件 ls -A 列出除.及..的其它文件 ls -r 反序排列 ls -t 阅读全文
posted @ 2019-05-09 14:59 无解的不等式 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 一:代码合并冲突 git status,vi README.MD,然后手动去掉多余符号 这个时候我们就可以知道README.MD有冲突,需要我们手动解决,修改README.MD解决冲突 二:版本回退 回退到当前版本(放弃所有修改) git reset --hard 放弃某一个文件的修改 git ch 阅读全文
posted @ 2019-05-09 14:50 无解的不等式 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 随着计算机技术,尤其是网络技术的飞速发展,如今的程序开发人员不仅仅局限于基于单机运行或单一线程的应用程序的开发。服务器端 / 客户端模式的最显著的特点是一个服务器端应用能同时为多个客户端提供服务。而传统的服务器端 / 客户端模式通常为每一个客户端创建一个独立的线程,这种实现方式在客户端数量不多的情况 阅读全文
posted @ 2019-05-06 11:30 无解的不等式 阅读(361) 评论(0) 推荐(0) 编辑