安卓的用户界面线程(user interface thread) 1.1 主线程 安卓修改用户界面并从一个单一用户界面线程中处理输入事件,这个线程也被称作主线程(main thread) Android将所有的事件都收集进一个队列中,并且作为Looper类的一个实例来进行处理 1.2为什么要利用并发性 如果程序不使用任何并发结构,那么一个安卓app的所有代码都运行在一个主线程中,而且每一段代码都要在等待它前面的代码运行完之后才能运行. 如果有一个持续时间比较长的操作,比如从网络上加载数据,那么这…
最近在使用ansible shell模块启动一个shell编写的脚本,该脚本主要功能式加载java的classpath并在后台运行这个java程序. 该脚本在linux shell中可以正常启动和停止,但是使用ansible shell模块却每次都启动后进程都消失了,日志没有任何异常,pid文件也生成了. 后来经过一个同事的猜想,是否有程序将该进程kill掉了. 于是产生了以下几种猜想: 1.ansible shell模块执行完shell脚本,就立即关闭当前的shell,进程也就被关闭了. an…
 一.作用 可以用于对运行中java程序进行诊断监控分析,也可以用于开发阶段查看一些异常信息或者调用过程(如有些第三方代码没有源代码,不便于debug调试). 注:如果用于对在线运行系统的诊断,需要十分谨慎. 1.脚本编写是否准确无法 2.监测范围是否可控,不能监控过大的范围,给系统带来大的冲击 3.使用btrace工具,会占用一部分内存,如果当前程序内存空间已经不够用了,则不能使用,若强行使用,可能会导致java内存不足而从引起java虚拟机退出 4.通过实际测试,监控不能保证每次都正确监…
写了个程序,大概就是日志文件快写满的时候自动删日记.然后 java -jar  log_delete.jar  &  跑起来.过两天ps发现程序没有了, 网上一查明白是因为:通过终端(shell窗口)起的程序,终端关掉(此session结束),会发送SIGHUP信号给此终端起的程序(属于此sesseion下process group).所以响应的程序也结束了. 解决方式: nohup  java -jar  log_delete.jar  & 原理: nohup屏蔽SIGHUP信号. 注意…
[转][安卓笔记]AsyncTask源码剖析 http://blog.csdn.net/chdjj/article/details/39122547 前言: 初学AsyncTask时,就想研究下它的实现源码,怎奈源码看了好几遍都没看懂,于是搁置了.最近心血来潮,又看了一些源码,如 HandlerThread,IntentService,AsyncQueryHandler等,收获颇深,于是乎想回头再研究下AsyncTask, 没想到这次居然很容易看懂了... 正文: 注:1.读者阅读本文前,必须对…
问题描述:当SSH远程连接到服务器上,然后运行一个服务 ./catalina.sh start,然后把终端开闭(切断SSH连接)之后,发现该服务中断,导致网页无法访问.   解决方法:使用nohup命令让程序在关闭窗口(切换SSH连接)的时候程序还能继续在后台运行.   Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用& 在程序结尾来让程序自动运行.比如我们要运行mysql在后台: /usr/local/mysql/bin/mysqld_safe --user=mysql &am…
利用Qt设计师窗体在运行时创建用户界面 我们利用Calculator窗体例子中创建的窗体(Form)来展示当一个应用(application)已经生成后,是可以在其运行时产生与例子中相同的用户界面. 准备 Calculator窗体例子定好了一个无须修改,可直接使用的用户界面.在本例子中,我们使用一个资源文件来包含之前例子中的calculatorform.ui,它也可以存储在硬盘上. 为了在运行时生成窗体,我们需要在本例子中将QtUiTools 模块库链接进来,工程文件包含了所有需要的信息: HE…
利用jdk自带的运行监控工具JConsole观察分析Java程序的运行 原文链接 一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行.您可以轻松地使用 JConsole(或者,它更高端的 “近亲” VisualVM )来监控 Java 应用程序性能和跟踪 Java 中的代码. 二.如何启动JConsole 如果是从命令行启动,使 JDK 在 PATH 上,运行 jconsole…
目录 第1章安卓手机上运行 PC-E500 程序    1 1 PockEmul    1 2 下载    1 3 打包BASIC程序    2 4 配置PC-E500模拟器    5 5 载入e500.pkm    7 6 载入40000.bin    8 7 解包    10 第1章安卓手机上运行 PC-E500 程序 1 PockEmul 安卓手机上运行PC-E500程序,需要一款PC-E500模拟器.PockEmul是一款可模拟多种型号计算器的程序,可运行在Windows.Linux.A…
如果在终端中执行java -jar xxx.jar&命令,当终端关闭时,xxx.jar也会同时结束运行,但是如果执行nohup java -jar xxx.jar&命令,则程序会在后台一直运行,值得注意的是,此时程序控制台输出会被转移到nohup.out文件中. 附:nohup命令参考 nohup 命令  用途:不挂断地运行命令. 语法:nohup Command [ Arg ... ] [ & ] 描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的…