要实时查看某个thread所使用的内存大小并没有具体的语句。
但是可以通过前后对比法进行阶段性监控与分析。
首先加入一个静态方法:
public static long getmemory() {
return runtime.getruntime().freememory();
}
这个是查看运行时空闲内存的语句。
所以应该在需要检测的线程执行点前后进行插桩。
long point1 = getmemory();
线程调用
long point2 = getmemory();
注意:另外,在这个过程中不应该有其他的干扰(调用其他线程或者其他操作)
甚至可以在线程中进行插桩,然后分析所有点的数值变化,根据数值差,就可以得出答案。
mysql系统变量分为全局变量和会话变量,全局变量的修改影响到整个服务器,会话变量修改只影响当前的会话。
查看log日志是否开启
show variables like 'general_log'
set GLOBAL general_log='ON';
SET GLOBAL general_log_file = '/tmp/mysql.log'
不使用的时候记得关掉,否则会大量占用磁盘空间。
show processlist命令查看了当前正在执行的sql语句,同时可以查看用户的当前连接
查看慢日志
show variables like '%slow_query_log%';
show variables like 'long_query_time%';设置慢日志记录什么样的SQL,默认10s
log-queries-not-using-indexes:未使用索引的查询也被记录到慢查询日志中,一般也开启这个变量
show status查看mysql运行状态(to learn)
比如查看mysql中有多少条慢查询记录: show global status like '%Slow_queries%';
1.将应用程序源码复制进Android源码目录中(提前编译好源码)
2.使用build/envsteup.sh 配置shell -
mm TARGET_PRODUCT=product_name
或直接./build_android.sh 也能完成编译。
3.在源码目录:out/target/product/productname/obj/APPS/test_cert_intermediates 下有三个文件:package.apk package.apk.unsigned package.apk.unaligned
将package.apk.unsigned复制出来,单独进行sign.
4.在Windows下进行sign: jarsigner -verbose -keystore youkey.keystore d:package.apk.unsigned youkey
5.zipalign -v 4 d:package.apk.unsigned d:package.signed.apk
nodejs是一种单线程模型,但是,使用nodejs的child_process模块可以实现多进程任务。利用child_process可以创建子进程,实现子进程和主进程之间的通信。
nodejs v0.12.7版本child_process提供以下同步和异步的方式创建进程:
异步创建:
child_process.spawn(command[, args][, options])
options.stdio
options.detached
options.customFds
child_process.exec(command[, options], callback)
child_process.execFile(file[, args][, options][callback])
child_process.fork(modulePath[, args][, options])
同步创建:
child_process.spawnSync(command[, args][, options])
child_process.execFileSync(command[, args][, options])
child_process.execSync(command[, options])
以上是如何监控Java子线程的执行时间和内存占用情况的详细内容。更多信息请关注PHP中文网其他相关文章!