目前Eclipse只折叠java doc和功能级别,但是当读取长方法时,可能会有很多if/else等,有没有办法折叠它们?
我的应用程序在该Application::onCreate()
方法中进行了相当多的初始化,并且我有一个检查,如果它被调用两次将抛出异常.
但是,在某些特定情况下,Application::onCreate()
被调用两次.我在下面添加了以下Log
语句onCreate()
:( instance
是一个静态变量)
Log.i(TAG, "Application::ctor, this=" + this + " instance=" + instance + " pid="
+ android.os.Process.myPid());
Run Code Online (Sandbox Code Playgroud)
我有两个日志(通常,instance == null
):
09-20 19:14:42.151 {main} [INFO] [Application] Application::ctor, this=com.shawnma.MyApplication@428886b0 instance=null pid=10741
09-20 19:14:50.116 {main} [INFO] [Application] Application::ctor, this=com.shawnma.MyApplication@42923e00 instance=com.shawnma.MyApplication@428886b0 pid=10741
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我从onCreate()
方法返回- 它不会受到伤害,因为一切都应该在内存中.但是,另一个例外是在Android系统之后立即显示:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.innopath.mobilemd/com.innopath.mobilemd.ui.LauncherActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
at android.app.ActivityThread.access$600(ActivityThread.java:130)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511) …
Run Code Online (Sandbox Code Playgroud) 我正在使用命令行在solarix x86 - 64bit上运行weblogic服务器:
-Xrs -Xms4096m -Xmx4096m -XX:MaxPermSize=256m -da ...
Run Code Online (Sandbox Code Playgroud)
所以最大堆大小应该是4G,但是经过一夜之后,它崩溃并产生了39G内核:
-bash-3.00$ ls -l core
-rw------- 1 user group 39017429722 Sep 27 19:47 core
Run Code Online (Sandbox Code Playgroud)
我使用pmap来转储核心内容:
$ pmap core
core 'core' of 21092: /opt/middleware/jdk1.6.0_21/bin/amd64/java -Xrs -Xms
0000000000400000 52K r-x-- /opt/middleware/jdk1.6.0_21/bin/amd64/java
000000000041C000 4K rw--- /opt/middleware/jdk1.6.0_21/bin/amd64/java
000000000041D000 2226208K rw---
0000000088225000 2097152K rw---
0000000108225000 4194304K rw---
0000000208225000 8388608K rw---
0000000408225000 16777216K rw--- [ heap ]
FFFFFD7EDF610000 512K rwx--
FFFFFD7EDF77A000 96K rw--- [ stack tid=147 ]
FFFFFD7EDF87B000 96K rw--- [ stack tid=146 ]
FFFFFD7EDF97C000 96K …
Run Code Online (Sandbox Code Playgroud)