avatar
文章
86
标签
12
分类
25
Home
Posts
Learn
Note
Categories
Tags
LogoBravestSnail's Blog
Home
Posts
Learn
Note
Categories
Tags

BravestSnail's Blog

IO模型
发表于2025-10-27|note
IO模型的发展历程I/O模型指的是程序与输入输出设备之间交互的方式。下面是I/O模型的发展历程: 阻塞式I/O模型(Blocking I/O Model):在此模型中,当一个I/O操作被执行时,进程会阻塞,直到该操作完成为止。这种模型简单易用,但是效率较低,因为进程会一直等待操作完成,期间不能进行其他工作。 非阻塞式I/O模型(Non-Blocking I/O Model):在此模型中,当一个I/O操作被执行时,进程不会阻塞,而是立即返回,并在后续时间内轮询查看操作是否已经完成。这种模型相对于阻塞式I/O模型来说效率更高,但需要轮询查看操作状态,会增加CPU的负担。 I/O复用模型(I/O Multiplexing...
Java并发
发表于2025-10-27|note
Java内存模型Java内存模型规定了所有的变量都存储在主内存(Main Memory)中(此处的主内存与介绍物理 硬件时提到的主内存名字一样,两者也可以类比,但物理上它仅是虚拟机内存的一部分)。每条线程 还有自己的工作内存(Working Memory,可与前面讲的处理器高速缓存类比),线程的工作内存中保存了被该线程使用的变量的主内存副本,线程对变量的所有操作(读取、赋值等)都必须在工作内 存中进行,而不能直接读写主内存中的数据。不同的线程之间也无法直接访问对方工作内存中的变 量,线程间变量值的传递均需要通过主内存来完成,![[Pasted image 20230520212252.png]] volatile关键字特性 保证此变量对所有线程的可见性,这里的“可见性”是指当一条线程修改了这个变量的值,新值对于其他线程来说是可以立即得知的。 禁止指令重排序优化 并发下的问题以下的代码,因为Java中运算符并非原子操作导致volatile变量在并发下发出现问题。 123456789101112131415161718192021222324252627282930/** *...
在U Boot环境下查看U盘文件
发表于2025-10-27|noteLinux
处理FAT格式U盘步骤1:初始化USB子系统初始化USB子系统,以便U-Boot能够识别到U盘。 1usb start 步骤2:列出USB设备列出所有连接的USB设备,确认U盘是否被识别。 1usb tree 步骤3:查看U盘上的分区查看U盘上的分区信息。 1part list usb 0 步骤4:挂载分区并列出文件挂载U盘的第一个分区并列出文件。 1fatls usb 0:1 示例流程12345678910111213141516171819=> usb start=> usb treeUSB device tree: 1 Hub (480 Mb/s, 0mA) | U-Boot Root Hub | +-2 Mass Storage (480 Mb/s, 200mA) SanDisk Cruzer Blade=> part list usb 0Partition Map for USB device 0 -- Partition Type: DOSPartition Start Sector Num...
wsl代理
发表于2025-10-27|noteWindows
软件:Clash 代理软件设置 查看代理端口,Clash默认端口为7890 打开LAN口开关 wsl设置原理原理是使用本机作为代理服务器,为wsl提供代理服务,因此需要本机ip地址和代理服务端口,并将wsl的代理设置为该代理服务器。 脚本1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#!/bin/shhostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')wslip=$(hostname -I | awk '{print $1}')port=7890PROXY_HTTP="http://${hostip}:${port}"set_proxy(){ export...
Android 系统导航栏模式切换与查询
发表于2025-10-27|noteAndroid杂项
导航栏模式对应的 Overlay 包名 三按钮模式: 包名: com.android.internal.systemui.navbar.threebutton 两按钮模式: 包名: com.android.internal.systemui.navbar.twobutton 手势导航模式: 包名: com.android.internal.systemui.navbar.gestural 传统导航模式: 包名: com.android.internal.systemui.navbar.no_navbar 切换导航栏模式启用特定的导航栏模式使用以下命令通过 ADB 切换到所需的导航栏模式: 切换到手势导航模式: 12345 adb shell cmd overlay enable com.android.internal.systemui.navbar.gestural - **切换到两按钮导航模式**: ```bash adb shell cmd overlay enable...
Android重签名
发表于2025-10-27|noteAndroid杂项
当您需要对 APK 文件进行对齐和重签名时,可以按照以下步骤执行: 对 APK 文件进行对齐 打开终端或命令提示符,并导航到 Android SDK 的 build-tools 目录。该目录中包含了 zipalign 工具。例如: 1cd /path/to/android/sdk/build-tools/{version}/ 将 {version} 替换为您安装的 Android SDK 版本号。 运行以下命令来对 APK 文件进行对齐: 1./zipalign -f -p 4 /path/to/your/app.apk /path/to/your/aligned_app.apk 在命令中替换以下内容: /path/to/your/app.apk:要处理的 APK 文件的路径。 /path/to/your/aligned_app.apk:处理后的 APK 文件的路径。 请确保提供了正确的路径和文件名。 运行上述命令后,将会在指定的路径中生成一个对齐后的 APK 文件。 重新签名 APK 文件 打开终端或命令提示符,并导航到...
Android中分享应用程序缓存目录文件的方法
发表于2025-10-27|noteAndroid杂项
Android中分享应用程序缓存目录文件的方法在Android开发中,我们可能需要将应用程序缓存目录下的文件分享给其他应用程序或用户。这里介绍一种常见的方法,使用FileProvider来获取文件的内容URI,并创建一个共享操作。 获取文件的内容URI首先需要获取要分享的文件的Uri对象,可以使用以下代码: 123456// 获取 Context 对象Context context = getApplicationContext();// 获取缓存目录下的文件File file = new File(context.getCacheDir(), "example.txt");Uri fileUri = FileProvider.getUriForFile(context, context.getPackageName() + ".fileprovider",...
Android 扫描包下类
发表于2025-10-27|noteAndroid组件化
Android(安卓)获取接口的所有实现类Android ClassesReader 扫描指定包下所有Class DexFile已经被弃用,可以考虑用hilt或者dagger替代
注解和注解处理器
发表于2025-10-27|noteAndroid组件化
什么是注解引用《Java编程思想》第20章的注解定义: 注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据。 元注解Java还另外提供了四种注解,专门负责新注解的创建,这些注解也被称为元注解(meta-annotation)。 注解 含义 @Target 表示该注解可以用于什么地方。可能的 ElementType 包括:CONSTRUCTOR:构造器的声明,FIELD:域声明(包括enum实例),LOCAL_VARIABLE:局部变量声明 ,METHOD:方法声明 ,PACKAGE:包声明...
Android组件化方案
发表于2025-10-27|noteAndroid组件化
Android组件化原理 Android组件化方案 使用Retrofit2封装适用于组件化项目的网络库 Android组件化之终极方案
12…9
avatar
BravestSnail
文章
86
标签
12
分类
25
Follow Me
公告
This is my Blog
最新文章
IO模型2025-10-27
Java并发2025-10-27
在U Boot环境下查看U盘文件2025-10-27
wsl代理2025-10-27
Android 系统导航栏模式切换与查询2025-10-27
分类
  • learn15
    • 01 plan7
    • 02 踩坑记录2
    • Java优化3
    • 设计模式2
  • note57
    • Android51
      • BLE1
标签
Java学习 Kotlin Java SharedPreferences Activity Android Handler View LiveData Paging3 PlantUML 问题
归档
  • 十月 2025 73
  • 三月 2023 1
  • 二月 2023 1
  • 九月 2022 2
  • 八月 2022 5
  • 四月 2022 1
  • 三月 2022 2
  • 四月 2020 1
网站信息
文章数目 :
86
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2019 - 2025 By BravestSnail
框架 Hexo 7.3.0|主题 Butterfly 5.3.5