月度归档:2019年09月

Android SDK常用命令(adb,sdkmanager,uiautomatorviewer,avdmanager,apkanalyzer)

adb

通过ADB命令获取当前activity

方法1:logcat实时查看

  1. cmd命令中输入:adb shell 进入shell命令模式
  2. shell中输入:logcat | grep ActivityManager 真机运行应用,可以实时 查看当前正在运行的Activity;

    ActivityManager: START u0 {flg=0x20000000 cmp=com.tencent.mm/.plugin.webview.ui.tools.WebviewMpUI (has extras)} from uid 10163

其中com.tencent.mm是包名,.plugin.webview.ui.tools.WebviewMpUI为运行的Activity

方法2:cmd命令中输入:adb shell 'dumpsys activity activities | grep Intent'

Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.tencent.mm/.ui.LauncherUI }
Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10800100 cmp=com.miui.home/.launcher.Launcher }
Intent { flg=0x10804000 cmp=com.android.systemui/.recents.RecentsActivity bnds=[48,796][516,1481] (has extras) }

Arch linux / manjaro开启bbr

查看内核版本号

uname -r

如果内核版本大于等于4.9可以直接开启

检查bbr模块是否存在

然后使用命令modinfo tcp_bbr查看内核模块是否存在。

modinfo tcp_bbr

开启bbr模块

sudo  modprobe tcp_bbr

下次自动开启

默认没有开启,自动开启

echo "tcp_bbr" > /etc/modules-load.d/80-bbr.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.d/80-bbr.conf
echo "net.core.default_qdisc=fq" >> /etc/sysctl.d/80-bbr.conf

立即加载

sysctl -p 

检查是否成功

sysctl net.ipv4.tcp_congestion_control

Mysql不锁表增加字段和索引方法

看了网上很多回答,基本都是过时和错误的。

5.6 以后增加了ONLINE DDL,

实现不锁表增加字段和索引非常简单。

解决办法

ALTER TABLE `member` ADD `user_from` smallint(1) NOT NULL, ALGORITHM=INPLACE, LOCK=NONE

ALGORITHM表示算法:default默认(根据具体操作类型自动选择),inplace(不影响DML),copy创建临时表(锁表),INSTANT只修改元数据(8.0新增,在修改名字等极少数情况可用)

LOCK表示是否锁表:default默认,none,shared共享锁,exclusive

什么情况下会inplace,什么情况下会copy?

什么情况下会inplace,什么情况下会copy,具体参考:Online DDL Operations

5.6以前版本解决办法

参考