- 博客(3)
- 收藏
- 关注
原创 解决安卓多屏模式输入法报错Display must not be null
查找赋值flags的代码如下,只有build-in类型的屏幕在初始化时会将flags默认赋值为FLAG_PRIVATE类型,设置vendor.display.builtin_presentation属性为true修改默认值。Display.FLAG_PRIVATE,导致getDisplayInfoInternal函数返回null,最终导致输入法服务启动报错。服务创建过程中会创建绑定Context上下文,过程中会获取display信息。输入法服务InputMethodService在应用进程创建时同时创建,
2023-12-22 17:27:37
422
原创 降低哈希冲突
以下为jdk8中的稀释冲突代码 static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16); }if ((p = tab[i = (n - 1) & hash]) == null)
2021-03-20 15:21:38
564
1
原创 MESI协议以及内存屏障
一、MESI协议MESI的六种消息大致分为两类:请求消息和响应消息cpu接收响应消息的顺序决定了->其他cpu感知到的当前线程的执行顺序1)read:(请求消息)cpu发送read消息请求需要读取数据的物理地址。2)read response:(响应消息)"read response"消息包含先前“read”消息请求的数据。此“read response”消息可能由内存或其他缓存之一提供。3)invalidate:(请求消息)“invalidate”消息包含要作废的缓存行的物理地址。所
2021-03-14 12:32:10
1949
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人