5 jiejingguo

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 10w+

LockSupport的几点笔记

LockSupport基于一个“许可”的概念来决定线程是否阻塞或是否解锁。当线程调用LockSupport.pack()时先判断是否获取许可,如果已经被分配了许可,就不阻塞当前线程,否则阻塞当前线程,直到其它线程调用LockSupport.unpack()给该线程分配许可。每个线程最多只有1个许可,每个线程的许可各不相同,且互不影响。向一个线程分配许可后,如果该许可没有被消耗掉,那么即使向这个线程释放再多的许可也没有用,因为一个线程最多只能有一个许可。等到最开始的许可被消耗后,如果该线程又调用Loc.

2020-05-21 10:52:37

解决办法:某些Windows 10上安装Edge浏览器后无法打开网页

主要问题某些Windows 10上安装Edge浏览器后无法打开网页解决办法找到Edge浏览器的安装目录,将msedge.exe重命名为Chrome.exe。这样一来,网页就可以正常打开了。但是又带来了一些附加的问题。附加问题1、在设置\应用\默认应用中edge浏览器的图标不见了,而且即使设置了edge为默认浏览器,默认打开的还是IE浏览器这是因为原先的可执行文件名虽然改成了Chrom...

2020-03-27 15:19:25

窗口显示原理之Surface的创建与渲染

Surface的创建

2019-10-30 22:42:58

MySQL修改root的密码

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;

2019-10-29 13:43:51

认识一下Android中的Window

Window  Window是个抽象类,PhoneWindow是Window唯一的实现类。PhoneWindow像是一个工具箱,封装了三种工具:DecorView、WindowManager.LayoutParams、WindowManager。其中DecorView和WindowManager.LayoutParams负责窗口的静态属性,比如窗口的标题、背景、输入法模式、屏幕方向等等。Win...

2019-10-16 22:28:16

窗口机制的笔记

Activity的生命周期由ActivityThread管控Activity被实例化后最先调用的方法是attach(),在attach()中实例化PhoneWindowActivity.setContentView()最终调用的是PhoneWindow.setContentView()。在PhoneWindow.setContentView()中经历了一下步骤:1、创建DecorView;2...

2018-06-27 19:33:54

Android Studio使用WIFI调试应用

先保证电脑和设备(如:手机)连上同一个局域网确保可以执行adb shell输入adb -s 32abe500 tcpip 8888adb connect 设备的当前IP地址当提示connected to 设备的当前IP地址时说明wifi连接已经成功了。如果需要断开wifi连接,则输入adb disconnect即可...

2019-09-26 15:56:21

ActivityRecord、ActivityClientRecord、Activity的关系

  在阅读Activity启动流程的源码时遇到了ActivityRecord和ActivityClientRecord,那么它们两个和Activity有什么关系呢?结论  ActivityRecord、ActivityClientRecord、Activity,三者一一对应。分析  ActivityRecord是system_server进程中的对象,ActivityClientRecor...

2019-09-19 09:26:53

ActivityRecord、TaskRecord、ActivityStack、ActivityDisplay、ActivityStackSupervisor到底是干嘛的?

  最近在阅读Activity启动过程时接触到了这几个概念:ActivityRecord、TaskRecord、ActivityStack、ActivityDisplay、ActivityStackSupervisor。它们是什么,可以用来干什么,以及怎么干的。网络上没有几篇文章可以说明白的,常见的回答就是ActivityStackSupervisor管理ActivityDisplay,Activ...

2019-09-03 23:20:56

再看Activity的启动模式

  Activity的启动模式:standard、singleTop、singleTask、singleInstance。这四种模式分别是指什么,网上一大堆,就不说了。下面整理下我对这几种启动模式的认识。为什么要设计这么多种启动模式?默认启动模式:standard。每次启动Activity都要创建一个实例,开销太大。为了复用原有的实例,所以又添加了singleTop、singleTask、...

2019-09-09 11:07:32

AS导入aar

某个Module依赖一个aar将aar拷贝至该Module的libs目录中在该Module的build.gradle中补上下面的代码repositories { flatDir { dirs 'libs' }}dependencies { compile(name:'XXX', ext:'aar')}多个Module依赖同一个库Modu...

2019-08-26 15:46:24

Intelhaxm安装失败

Android模拟器启动不了了?AS识别不了Genymotion了?  网上对这些问题有各种各样的处理方法,我都试过但是没有用。后来发现,最根本的原因是intelhaxm-android.exe(Hardware Accelerated Execution Manager)没有安装成功。  怎么判断intelhaxm-android.exe是否安装成功呢?可以在cmd窗口中输入sc query...

2019-08-25 23:14:52

在Windows上让Sublime Text支持Cscope

给Sublime Text安装Cscope插件通过 Preference -> Package Control -> Install Package->搜索Cscope插件,并安装。下载 cscope.exe,并配置路径下载cscope.exe的地址:https://download.csdn.net/download/wangyuexiao/10427148。将csc...

2019-08-15 22:29:56

AlertDialog的标题居中,底部按钮为三个时居中布局,更改按钮文字默认大写的设置

标题居中、更改底部按钮默认大写的设置<style name="CustomAlertDialog" parent="@style/Theme.AppCompat.Light.Dialog"> <item name="android:windowTitleStyle">@style/CustomAlertDialogTitle</item> ...

2019-05-23 17:34:12

Android Studio的SVN插件找不到了?

今天开启一个从SVN上checkout下来的项目时发现,Android Studio上svn的插件不见了,可以肯定100%是安装过了的。现在记录下解决的办法:1、点击VCS下的Enable Version Control Integration……2、在弹出来的窗口中选择Subversion,再点击OK即可...

2019-05-08 11:52:30

有关线程的笔记

每创建一个线程都要消耗内存,每个线程都有自己的栈空间(大约1M),也就是说每创建一个线程,操作系统就会给该线程分配1M的空间。而且当线程执行完时间片后需要把数据保存至内存或硬盘中,下一个线程执行时又要从内存或硬盘中取出对应自己的数据,这么一存一取也很耗时间。这就是为什么线程开太多的话,会导致执行任务所花费的时间更多的原因。Thread和Runnable不是一对一的关系,而是一对多的关系。比如线...

2019-04-17 23:10:02

Binder之ProcessState和IPCThreadState类分析

ProcessStateProcessState表示进程状态,一个进程就一个ProcessState对象。

2019-01-18 23:38:42

Android Studio导入修改过的系统源码

导入系统源码在主工程模块(如:app)下新建一个文件夹,名字随意,比如exlibs。把android.jar放入exlibs文件夹中。在主工程模块的build.gradle(如:app/build.gradle)加入如下一句话: dependencies { compileOnly files('exlibs/android.jar') //这里填写android.jar的路径 ...

2018-10-19 14:35:32

Binder驱动是如何维护本地Binder和Binder代理的映射关系

通信过程: binder设备驱动会为每个进程分配一个数据结构binder_proc,每进程中的每个用到了binder通信的线程分配数据结构binder_thread。binder设备驱动会为服务进程中的每个服务对象分配数据结构binder_node,它隶属于服务进程的binder_proc,即binder_node是binder_proc的子结构,binder_node中记录了服务对象在...

2018-09-07 15:32:19

Binder学习指南

Binder学习指南 发表于 2016-01-12   |   64...

2018-08-29 15:18:26

查看更多

勋章 我的勋章
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享小兵
    分享小兵
    成功上传3个资源即可获取