分类
交易二元战略选择

CCI 是一個強大的工具

Обратите внимание! По заявке фиксация курса возможна только на 15 минут с момента создания заявки, до момента пересчета наличных в кассе обменного пункта. Если пересчет происходит позже, курс обмена будут рассчитан по курсу сайта на момент фактического получения средств обменным пунктом т.е. пересчета наличных в кассе.

CCI 是一個強大的工具

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

  • Open with Desktop
  • View raw
  • Copy raw CCI 是一個強大的工具 contents Copy raw contents

Copy raw contents

Copy raw contents

PIXI.Loader 是一個強大的工具,可以載入許多種類型的 resources

  • 圖片 ( png / jpg . )
  • 音效 ( mp3 / ogg . )
  • 影片 **( mp4 , webm . ) **
  • 字型 ( Bitmap font / Web font . )

經過 PIXI.Loader 處理後,讓我們很簡易的可以去使用各種包裝好的 Texture Cache

Footer

© 2022 GitHub, Inc.

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

CCI 是一個強大的工具

轉載自:http://blog.csdn.net/sfshine/article/details/8771422

1.Java代碼獲取

Yes, you can get memory info programmatically and decide whether to do memory intensive work.

Get VM Heap Size by calling: Runtime.getRuntime().totalMemory();

Get Allocated VM Memory by calling: Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory();

Get VM Heap Size Limit by calling: Runtime.getRuntime().maxMemory()

Get Native Allocated Memory by calling: Debug.getNativeHeapAllocatedSize();

Using adb, there is a lot of CCI 是一個強大的工具 information you can get about the CCI 是一個強大的工具 memory use of a running system. A common one is the command "adb shell dumpsys meminfo" which will CCI 是一個強大的工具 spit out a bunch of information about the memory use of each Java process, containing the above info as CCI 是一個強大的工具 well as a variety of other CCI 是一個強大的工具 things. You can also tack on the name or pid of a single process to see, for example "adb shell dumpsys meminfo system" give me the system process:

The top section is the main one, where "size" is the total size in address space of a particular heap, "allocated" is the kb of actual allocations that heap thinks it has, "free" is the remaining kb free the heap has for additional allocations, and "pss" and "priv dirty" are the same as discussed before specific to CCI 是一個強大的工具 pages associated with each of the heaps.

If you just want to look at memory usage across all processes, you can use the command "adb shell procrank". Output of this on the same system looks like:

Here the Vss and Rss columns are basically noise (these are the straight-forward address space and RAM usage of a process, where if you add up the RAM usage across processes you get an ridiculously large number).

Pss is as we've seen before, and Uss is Priv Dirty.

直接執行 adb
shell dumpsys 會顯示以下所有信息。

adb
shell dumpsys activity 顯示activity相關的信息

adb
shell dumpsys statusbar CCI 是一個強大的工具 CCI 是一個強大的工具 顯示狀態欄相關的信息

adb
shell dumpsys meminfo $package_name or $pid 使用程序的包名或者進程id顯示內存信息

adb
shell dumpsys statusbar | grep notification=Notification

3.使用ddms查看

在DDMS里檢查heap的使用情況

Dalvik Debug Monitor Server(DDMS)是主要的Android調試工具之一,也是ADT Eclipse plug-in 的一部分,獨立的程序版本也可以在Android SDK的根目錄下的tools/下面找到。關於DDMS更多的信息,請參考使用DDMS 。

  • from Eclipse: click Window > Open Perspective > Other. > DDMS
  • or from CCI 是一個強大的工具 the command line: run ddms (or ./ddms on Mac/Linux) in the tools/ directory

在左邊的面板選擇進程com.example.android.hcgallery,然后在 工具條上邊點擊Show heap updates按鈕。這個時候切換到DDMS的VM Heap分頁。它會顯示每次gc后heap內存的一些基本數據。要看第一次gc后的數據內容,點擊Cause GC按鈕:

我們可以看到現在的值(Allocated列)是有一些超過8MB。現在滑動相片,這時看到 數據在增大。因為只有僅僅13個相片在程序里邊,所以泄露的內存只有這么大。在某種程度上來說,這時最壞的一種內存泄露,因為我們沒法得到 OutOfMemoryError來提醒我們說現在內存溢出了。

生成heap dump

我們現在使用heap dump來追蹤這個問題。點擊DDMS工具條上面的Dump HPROF文件按鈕,選擇文件存儲位置,然后在運行hprof-conv。在這個例子里我們使用獨立的MAT版本(版本1.0.1),從MAT站點下載 。

用MAT分析heap dumps

啟動MAT然后加載剛才我們生成的HPROF文件。MAT是一個強大的工具,講述它所有的特性超出了本文的范圍,所以我只想演示一種你可以用來檢測 泄露的方法:直方圖(Histogram)視圖。它顯示了一個可以排序的類實例的列表,內容包括:shallow heap(所有實例的內存使用總和),或者retained heap(所有類實例被分配的內存總和,里面也包括他們所有引用的對象)。

如果我們按照shallow heap排序,我們可以看到byte[]實例在頂端。自從Android3.0(Honeycomb),Bitmap的像素數據被存儲在byte數組里 (之前是被存儲在Dalvik的heap里),所以基於這個對象的大小來判斷,不用說它一定是我們泄露掉的bitmap。

右擊byte[]類然后選擇List Objects > with incoming references。它會生成一個heap上的所有byte數組的列表,在列表里,我們可以按照Shallow Heap的使用情況來排序。

使用MAT比較heap dumps

  1. 第一個HPROF 文件(using File > Open Heap Dump ).
  2. 打開 Histogram view.
  3. 在Navigation History view里 (如果看不到就從Window > Navigation History找 ), 右擊histogram 然后選擇Add to Compare Basket .
  4. 打開第二個HPROF 文件然后重做步驟2和3.
  5. 切換到Compare Basket view, 然后點擊Compare the Results (視圖右上角的紅色"!"圖標)CCI 是一個強大的工具 。

總結

這本篇文章里面,我展示了Allocation Tracker和heap dumps是如何給你一種對程序內存使用的感性認識。我也展示了Eclipse Memory Analyzer(MAT)可以幫助追逐我們程序里面的內存泄露問題。MAT是一個強大的工具,我也僅僅觸碰了一些皮毛,如果你想學習更多內容,我建議讀 一些下面的文章:

    : Eclipse MAT project的官方博客。
  • Markus Kohler的Java Performance blog有很多有用的文章, 包括 Analysing the Memory Usage of Android Applications with CCI 是一個強大的工具 the Eclipse Memory Analyzer and 10 Useful Tips for the Eclipse Memory Analyzer .

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。