首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
猿面试题解
程序员DHL
创建于2024-06-03
订阅专栏
微信小程序「猿面试」每日分享一道大厂面试题,涉及 Java、Android、鸿蒙和ArkTS、设计模式、算法和数据结构 等内容。
等 37 人订阅
共22篇文章
创建于2024-06-03
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
kotlin 中 lateinit、lazy、const 的区别
在 Kotlin 中,lateinit、lazy 和 const 是用于处理变量初始化和延迟初始化的不同机制。
wait 和 notify 存在那些问题,如何正确使用
wait()和 notify() 是 Java 中用于线程间协作的两个方法,它们是 Object 类的一部分。它们通常与 synchronized 一起使用,以实现线程间的通信,但是也存一些问题
什么是线程的安全性问题?说一下竞态、原子性、可见性、有序性
在 Java 中,线程安全性问题主要指的是在多线程环境下,多个线程同时访问和修改共享资源时可能出现的不一致或错误状态。
wait 和 notify 为什么要放在 synchronized 代码块中?
wait()和 notify() / notifyAll() 是 Java 中用于线程间通信的方法,它们必须在 synchronized 代码块或方法中使用
你是如何使用 wait () 方法的?使用 if 还是 while
在 Java 中,wait() 方法通常与 synchronized 关键字一起使用,以确保线程之间的正确同步。wait() 方法使当前线程进入等待状态,直到其他线程调用 notify
volatile 和 synchronized 的区别
在 Java 中,`volatile` 和 `synchronized` 都是用于控制多线程环境下的并发访问,但它们的作用和使用场景有所不同。
能使用 AIDL 实现跨进程传输一个 2M 大小的文件吗?
Binder 是一种进程间通信(IPC)机制,用于在不同进程之间传递数据。Binder 事务(Transaction)是指通过 Binder 进行的数据传输操作。Binder 事务分为同步事务和异步事
为什么使用 Bundle 而不使用 HashMap
Bundle 内部是由 ArrayMap 实现的,ArrayMap 和 HashMap 是 Android 中常用的两种键值对数据结构Bundle
ThreadLocal 可能会造成数据污染
ThreadLocal是 Java 提供的一种机制,用于在每个线程中存储独立的变量副本。ThreadLocal 核心实现依赖于 Thread 类中的一个内部类ThreadLocalMap
主线程结束了,子线程是否可以正常运行
在 Java 中,主线程结束后子线程是否继续运行取决于子线程的类型,线程分为守护线程(Daemon Thread)和用户线程(User Thread)。
用final声明的局部变量,能提升性能吗
在 Java 中,声明为 final 的局部变量通常不会直接带来显著的性能提升。无论局部变量声明时带不带 final 关键字修饰,对其访问的效率都一样。
一道奇葩的面试题,线程调用2次start方法会怎样
同一个线程对象调用 2 次 start 方法会怎样,问出这个问题的人也比较无聊,真的有人会在代码中连续调用 2 次 start 方法吗?
进行IPC通信时Service崩溃了,如何避免客户端崩溃
两个 app 进行 AIDL 通讯,客户端在 bindService 成功后,Service 因为某个原因,忽然挂掉了,客户端要如何做才可以避免崩溃
为什么kotlin要使用协程
我们都知道协程好,那么协程相比于线程好在哪里呢,这篇文章我们一起聊聊,kotlin 使用协程的原因。
Binder 对象存储在哪里,谁引用了它
多个客户端都去 bind 同一个 service,那么 service 返回的是同一个 stub 对象,还是多个 stub 对象?
为什么在子线程中创建 Handler 会抛异常?
Android 的 UI 框架设计为单线程模型,即所有的 UI 操作必须在主线程(也叫 UI 线程)中执行。为了方便在后台线程中执行耗时操作后更新 UI
为什么Zygote通信使用socket而不是binder?
在 Android 系统中,zygote 是一个特殊的守护进程,它的主要作用是用来启动新的应用进程。
Intent传输数据的大小有限制吗?这个大小是所有应用共享的吗?为什么不能传递大数据?
Binder 事务缓冲区的大小限制在 1MB 左右,如果尝试传递超过限制的数据,会导致 异常。但是传输数据大小可能会因为不同的设备
为什么 Android 要采用 Binder 作为 IPC 机制?
Binder 机制通过减少数据拷贝次数来提高 IPC 的效率。在 Binder 机制中,发送方只需要将数据从用户空间拷贝到内核空间一次,接收方可以直接访问内核空间中的数据,避免了额外的数据拷贝
源码揭秘,Handler 的 post 与 sendMessage 方法的本质区别
在 Android 中 Handler 是用来处理线程间通信的一种机制,而 Handler 的 post(Runnable r) 和 sendMessage(Message msg) 方法
下一页