logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Java 线程状态

操作系统层面线程有五态:New、Ready、Running、Blocked、Terminated,核心是就绪、运行、等待三态循环。Java 在此基础上做了 JVM 视角的重新划分,共 6 种状态:NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED。区别主要在于两点:一是 Java 把 OS 的 Ready 和 Running 合并成了 RUN

#java
OkHttp 原理

一句话概括:OkHttp 基于责任链模式,通过拦截器链处理请求的各个阶段,配合Dispatcher调度请求,连接池复用 TCP 连接。流程简述Request→RealCall→execute()enqueue()→Dispatcher调度 →→ 拦截器链依次处理 → 返回Response。亮点展开拦截器链:7 个拦截器的职责和顺序连接池Address决定连接复用,减少三次握手开销Dispatche

#okhttp
计算机:操作系统

死锁是系统中多个进程因争夺资源而造成的一种僵局。当每个进程都持有一定的资源并等待其他进程释放它们所需的资源时,如果这些资源都被其他进程占有且不释放,就导致了死锁。互斥条件:同一时刻一个进程占用了某个资源时,其他进程无法同时占用该资源。请求保持条件:一个线程因为请求资源而阻塞的时候,不会释放自己的资源。不可剥夺条件:资源不能被强制性地从一个进程中剥夺,只能由持有者自愿释放。循环等待条件:多个进程之间

#操作系统
HashMap 的线程安全

保证线程安全性,锁的粒度细化到数组的每个桶(Node),只有在操作同一个哈希桶时才会发生锁竞争,并发性能是更优。在 JDK 1.7 中采用分段锁(Segment),将数据分块,减少锁粒度,允许多个线程同时操作不同段。是 JDK 1.2 提供的包装类,同样采用全表锁(通过互斥对象),(允许。键值),但并发能力依旧有限,仅适合并发要求极低的场景。是 JDK 1.0 的遗留类,所有方法都用。这些操作都不

#java
Android Retrofit

Retrofit 本质是对 OkHttp 的封装。它通过动态代理为接口生成实现类。当调用接口方法时,会进入。

#android#retrofit
Java 基础

只需要继承。

#java#开发语言
JVM 基础

垃圾回收(Garbage Collection, GC)是自动管理内存的一种机制,它负责自动释放不再被程序引用的对象所占用的内存,这种机制减少了内存泄漏和内存管理错误的可能性。内存不足时:当JVM检测到堆内存不足,无法为新的对象分配内存时,会自动触发垃圾回收。手动请求:虽然垃圾回收是自动的,开发者可以通过调用或建议 JVM 进行垃圾回收。不过这只是一个建议,并不能保证立即执行。JVM参数-Xmx(

#jvm
ViewModel 原理

四个角色获取流程:检查 Store 缓存 → 无则 Factory 创建 → 放入 Store → 返回实例旋转不销毁保留 ViewModelStore,重建时取回清理规则:仅当 Activity 真正 finish(非配置变更)才清除最佳搭档:LiveData(数据驱动 UI) + Repository(数据层解耦)安全使用 Context:优先继承使用 Application参考: https

#android
计算机网络

(1)四次挥手的过程客户端发送一个 **FIN 报文给服务端**,表示自己要断开数据传送报文中会指定一个序列号(seq=x)。然后,客户端进入FIN-WAIT-1状态。(客户端数据确认发送完了才会发送fin报文)服务端收到 FIN 报文后回复ACK 报文给客户端且把客户端的序列号值 +1,作为 ACK 报文的确认号(ack=x+1)(确认序列号然后,服务端进入CLOSE-WAIT状态,客户端进入F

#计算机网络#网络
    共 11 条
  • 1
  • 2
  • 请选择