
笔记
wwwyyyyyyywy
这个作者很懒,什么都没留下…
展开
-
原子计数器的打印
原子计数器的log打印计数值的形式; #include std::atomic counter(0); LOGD(" count is:%d",counter.load()); std::atomic对象的值的读取和写入可使用load和store实现。原创 2021-04-21 19:55:58 · 441 阅读 · 0 评论 -
线程间的通讯方式
在不同进程间的通讯方式有: 信号量, socket网络连接, 共享内存 ,管道,共享文件 同一进程间,不同线程之间的通讯方式有: 1、互斥锁 mutex; lock_guard (在构造函数里加锁,在析构函数里解锁) unique_lock 自动加锁、解锁 atomic 基本类型的原子操作 2、条件变量condition_variable 3、.信号量 4、读写锁shared_lock ...原创 2021-03-02 09:40:24 · 127 阅读 · 0 评论 -
2021-02-24
Android 的HIDL的主要接口 : ICameraDeviceSession constructDefaultRequestSettings configureStreams processCaptureRequest getCaptureRequestMetadataQueue getCaptureResultMetadataQueue flush close ICameraDevice getResourceCost getCameraCharacteristics setTorchMode op原创 2021-02-24 15:12:24 · 168 阅读 · 0 评论 -
复习基础知识
1、堆和栈的区别 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收; 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的 全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另 一块区域。 程序结束后由系统释放原创 2021-01-10 11:29:36 · 479 阅读 · 1 评论 -
基础知识--复合类型指针和引用
1、关于& 和的使用说明: &和 既可表达式的运算符也可以作为声明中的一部分出现,具体的应用要结合上下文来看: 当&和*紧跟类型名一起出现时他就是声明中的一部分:例子: int i= 12; int &a= i ; ///& 跟在类型名出现,是声明中的一部分,故a是一个引用 int *p ; //*紧跟在类型名出现,是声明中的一部分,故p 是一个指针 p =&i ; //& 出现在表达式中,是一个取地址运算符; *p =i; //*出原创 2020-11-03 20:41:24 · 219 阅读 · 0 评论