- 博客(525)
- 资源 (17)
- 收藏
- 关注
原创 [common c/c++] 为何纯虚父类可以在子类的构造函数初始化列表进行实例化
纯虚类(抽象类) 是只至少拥有一个纯虚函数的类,这种类可以有成员变量,但是不能进行单独的实例化(new,局部变量,智能指针构造等等)。其根本原因是由于纯虚类提供了未实现的成员函数,所以编译器无法知道如何处理这种悬空的成员函数符号表,就好像一个dangling function pointer一样,没有指向任何 .text section。所以一旦授权实例化形成实例,那么就会出现类似于访问悬垂指针的情况。因此是禁止实例化的。
2024-04-23 14:28:03 225 1
原创 [git] 使用git和github工作思路和经验
有时候在本地修改代码时,会涉及到一些拼写错误和编译错误,这个过程可能反复操作很久,因此会产生很多意义不大的commit,如果不对这些commit进行合并就直接上传到github上对应的远程分支,那么远程分支里同样会出现一些无意义的commit。git --amend 经常用来修补上一次提交,但是如果上一次提交已经被 git push 到远程仓库了,那么本次 --amend 的提交在被 push 到远程仓库的时候就会被要求先从远程仓库merge代码才可以进行本次提交。如果确实发生了这个问题,可以通过。
2024-04-17 14:35:14 516
原创 [Android] Binder Native端如何获取Binder Proxy端的 pid
IPCThreadState::self()->getCallingPid()
2024-04-11 10:33:25 96
原创 [Android] 使用gbinder与Android的service进行native层的IPC通讯
Android 框架是以 Binder 为基础搭建起来的,处处都离不开 Binder IPC, Android的native binder库为libbinder。其他第三方的binder库有libgbinder。
2024-04-09 15:45:17 416
原创 [Android] MediaPlayer SDK API glance
音视频的 playback。创建 MediaPlayer 的线程必须和调用 SDK 接口的线程是同一个。注册 callback 给 MediaPlayer SDK 的 thread 必须自带一个 running Looper,比如 main UI thread。回调函数:常用 :回调函数说明。
2024-03-05 11:06:25 546
原创 [SD] stable diffusion webui forge 安装
stable diffusion webui forge 是 stable diffusion webui 的定制版,其主要面向快速图像生成。
2024-03-01 15:32:35 1290
原创 [SD] 安装使用stable diffusion webui
后面启动可以使用run.bat,也可以使用 webui-user.bat ,这里建议使用 webui-user.bat,因为有些时候安装插件后会需要更新一些python库,而run.bat无法看到进度,会误以为没有启动成功,而webui-user.bat会把更新安装进度打印出来。这里建议手动安装,即到对应的git仓库下,手动下载zip包,丢到externsions目录下解压,重启webui即可。如果启动浏览器以后发现有Error提示,则可能是代理的问题,需要关闭代理即可。
2024-03-01 15:28:53 512
原创 [多媒体服务器] 通过nginx搭建 rtmp/hls/dash 媒体服务器,支持点播和直播
rtmp://localhost/live/stream 中的 localhost 代表本机,不用动,live是nginx.conf文件里的 application live,如果是 application live1,那么这里就是 live1 , stream 是当前流的标识,可以自定义为任何字符串。nginx,nginx rtmp插件,OBS,ffmpeg,ubuntu,youtube-dl。增加如下内容到nginx配置文件 nginx.conf。nginx重新加载配置文件nginx.conf。
2024-03-01 11:53:50 1155
原创 [Android Studio] Failed to apply plugin [id ‘com.android.application‘]
1.检查settings.gradle里的 maven 仓库是否存在,正常内容如下。
2024-02-01 15:34:38 607
原创 [Android] libmedia-libmediaplayerservice 框架
【代码】[Android] libmedia-libmediaplayerservice 框架。
2024-01-26 18:41:16 408
原创 [Android] android架构中对于硬件封装的演化(HAL/HIDL/AIDL)
前言:Android 架构在硬件封装上经历了 3 个阶段,2次大演化。分别是 HAL 阶段,HIDL 阶段 和 AIDL 阶段。HAL 阶段:[?,8.0)这个阶段中,HAL 为底层硬件的抽象层,或者说 Wrapper 层/Helper层HAL层的所有对象都是 .so动态库,这些动态库的最主要行为就是包装对硬件设备的访问逻辑。比如如果一个硬件的驱动为 /dev/device0,那么针对这个device的 HAL 层对象就是对 /dev/device0 的访问。HAL的子阶段。
2024-01-24 10:28:50 717
原创 [Linux使用] 运行中进程瞬时栈信息分析 PSTACK
pstack 可显示进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。这个命令在排查进程问题时非常有用,比如一个服务一直处于work状态(如假死状态,好似死循环),使用这个命令就能轻松定位问题所在;可以在一段时间内,多执行几次pstack,若发现代码栈总是停在同一个位置,那个位置就需要重点关注,很可能就是出问题的地方;此命令允许使用的唯一选项是要检查的进程的 PID。请参见 proc(1) 手册页。示例:查看bash程序进程栈。
2024-01-20 16:09:21 400
原创 [Linux使用] 库依赖分析 LDD
查看程式运行所需的共享库,常用来解决程序因缺少某个库文件而不能运行的一些问题。第二列: 系统提供的与程序需要的库所对应的库。第一列:程序需要依赖什么库。第三列:库加载的开始地址。
2024-01-20 16:06:28 400
原创 [Linux使用] 网络工具
iperf是一个TCP/IP和UDP/IP性能测试工具,能够提供网络吞吐率信息,以及震动、丢包率、最大组和最大传输单元大小等统计信息,可以由这些信息来分析网络的通信性能、定位网络瓶颈。-s 0/0 : 收发双端的地址, 0/0代表任意收和任意发 , 如指定某个ip对 , 则本规则只约束此ip对 (short addr)#创建客户端(-c客户端运行/-t运行60秒/-l读写缓冲区8K/-i每10秒输出一次当前结果)工程源码路径:https://github.com/esnet/iperf。
2024-01-20 15:48:52 425
原创 [modern c++] std::binder 的返回值用 std::function 保存
当使用 std::function 保存 std::binder 的返回值时,需要注意所有被 placeholder 占用的参数位置都不应该再出现再 std::function 的模板列表里。
2024-01-12 14:08:11 405
原创 [pkg-config] 第三方软件包/库管理工具 pkg-config
构建工程时,多会依赖于第三方库,这些库在安装到系统中后都会创建一个 .pc 后缀的说明文件,里面包含了库的基本信息,比如版本号,头文件安装路径,库文件安装路径等等。使用这个信息我们便可以准确地获取这个库的信息。pkg-config 也用在 rpm 打包中,我们可以在所有 rpm 源码路径中找到一个 .pc 结尾的文件,这里面描述了当前 rpm 包依赖的库,自己这个库的名字和版本,当使用rpm释放时会被安装到哪些目录等等。
2024-01-08 17:25:34 419
原创 [Android] AOSP 源码编译
Build Android system and Kernel images - Code Inside OutAOSP, led by Google, is an open source operating system for mobile devices. Andoid now aday can run on many different devices, including Vehicle Infortainment systems. Android Automotive has the base
2024-01-05 10:09:46 547
原创 [Linux c/c++] 关于进程名,线程名,/proc文件系统 等
【代码】[Linux c/c++] 关于进程名,线程名,/proc文件系统 等。
2024-01-04 11:34:50 666
原创 [waydroid] waydroid中 修改 android /system 目录 的权限
2. 使用mount查看 android 文件系统对应的挂在点。1. 找到 android 文件系统位置。3. 使用mount修改 权限。
2024-01-03 11:49:22 392
原创 [linux c/c++] 通过读取 /proc 路径获取指定进程名的信息
【代码】[linux c/c++] 通过读取 /proc 路径获取指定进程名的信息。
2024-01-02 15:02:42 390
原创 [IDE][VS Code] 常用配置
"punctuation.separator.pointer-access", //语法符号,视作关键字 符号 "->""punctuation.separator.dot-access", //语法符号,视作关键字 符号 ".""punctuation.definition.directive", // 与宏相关的关键字符号 "#""string.quoted.other.lt-gt.include", //头文件。"sideBar.background": "#cbd6e5", //侧边色。
2023-12-28 14:41:06 986
原创 [Android] 如何在Android中执行自己编译的可执行文件
1.push文件到 /data/localadb push file /data/local2.增加可执行权限adb shell chmod +x /data/local/file3.运行adb shell ./data/local/file
2023-12-27 19:36:29 700
原创 [Android] Android.mk 转 Android.bp
Android 提供了一个工具androidmk ,可以把 Android.mk 转换成 Android.bp。
2023-12-25 10:59:31 484
原创 [Android] 如何把自定义的 可执行文件/库文件/apk 放到系统目录下
PRODUCT_PACKAGES += 可执行文件名/动态库名字/静态库文件名字/apk文件名字。可执行文件:/system/bin。库文件:/system/lib。
2023-12-25 10:24:53 400
原创 [soong] Android源码构建工具 soong
https://android.googlesource.com/platform/build/soong/+/refs/heads/master/README.md
2023-12-21 11:48:50 373
原创 [Android] BinderDemo
Client/main.cppInterface/IDemo.hInterface/IDemo.cppServer/DemoServer.hServer/DemoServer.cppServer/main.cppREADME.markdownPS:服务端如何查找service的标识字符串?客户端如何查找连接了哪个Binder服务端?记住上面两点,能够快速定位客户端和服务端的关联关系。https://ebixio.com/blog/20
2023-12-14 20:26:12 526
原创 [Android Audio] 什么是offload audio
offload audio是AudioTrack中表示某一类数据的一种说法,offload audio数据是指audio不需要由app进行解码,解码工作由硬件完成。也就是说AudioTrack的write写入的数据是未解码的数据,而不是pcm数据。解码的工作交由AudioTrack的插件完成,比如DefaultAudioTrack,或者自己写的MyAudioTrack。如果App通过MediaCodec解码后,再write 解码后的pcm数据,这种情况不属于offload模式。
2023-12-13 19:19:59 776
原创 [其他] VSCode 环境搭建
Highlight selected wordsSource Insight Keymapctrl+k,ctrl+t
2023-12-13 14:00:15 356
原创 [common c/c++] 为什么使用 semaphore 的生产者消费者模型需要两个信号量
一个信号量场景下,生产者在 post 信号的时候是没有束缚的,如果不控制生产量的话,会导致系统资源被耗尽。一种方法是判断 FIFO 的尺寸,如果 FIFO 已经满了,则停止本次生产,接着sleep一定时间等待消费者从队列中取走数据,然后判断队列是否为空或者是否降到一定阈值,如果满足则继续填充队列。这种方法有一个问题,那就是如果消费者突然间在短时间内把数据都取走了,那么生产者sleep的就是影响了效率,如果缩减sleep的周期,那么又会导致cpu升高。另外一种方法是使用两个信号量。
2023-12-12 17:16:45 370
TEST6.2.404.485.3.SXANDROID_TVAPP.0.0_Pre_Release.apk.1
2023-08-10
ffmpeg windows sdk 和 动态库
2020-10-17
ffmpeg windows sdk 和 动态库
2020-10-17
vcruntime140_1.dll
2020-05-18
Qt的ts文件转换成excel文件
2020-05-12
ts2excel.exe
2020-05-12
ts2excel.exe
2020-05-12
spring framework reference-4.3.10
2017-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人