==== Avoid object creations ====
 
==== Avoid object creations ====
   −
If possible, create your objects before starting the actual game. Or at least try to reuse old objects. Object creation is expensive on Android. Try to pool objects if possible. jPCT-AE offers some help for this. For example, there's a static create()-method in SimpleVector as an alternative to the constructor. Using this method allows jPCT to optimize SimpleVector usage to a small degree.
+
If possible, create your objects before starting the actual game. Or at least try to reuse old objects. Object creation is expensive on Android. Try to pool objects if possible. jPCT-AE offers some help for this. Many methods that return a Matrix or a SimpleVector exist in two flavours now: One that simply returns a new instance and one that takes an instance as an argument and fills and returns that one. You can save the creation of unneeded, short lived objects with that.
In addition, many methods that return a Matrix or a SimpleVector exist in two flavours now: One that simply returns a new instance and one that takes an instance as an argument and fills and returns that one. You can save the creation of unneeded, short lived objects with that.
+
    
==== Avoid object destruction ====
 
==== Avoid object destruction ====
 
==== Watch the garbage collection ====
 
==== Watch the garbage collection ====
   Unexpected non-MediaWiki exception encountered, of type "Error"
[647d8e45] /wiki/index.php?title=Performance_tips_for_Android&diff=628&oldid=430 Exception from line 436 of /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php: Call to undefined function each()
Backtrace:
#0 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(546): DiffEngine->diag(integer, integer, integer, integer, integer)
#1 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(347): DiffEngine->compareSeq(integer, integer, integer, integer)
#2 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(228): DiffEngine->diffLocal(array, array)
#3 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(725): DiffEngine->diff(array, array)
#4 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(864): Diff->__construct(array, array)
#5 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DairikiDiff.php(987): MappedDiff->__construct(array, array, array, array)
#6 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/TableDiffFormatter.php(193): WordLevelDiff->__construct(array, array)
#7 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DiffFormatter.php(143): TableDiffFormatter->changed(array, array)
#8 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DiffFormatter.php(83): DiffFormatter->block(integer, integer, integer, integer, array)
#9 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(939): DiffFormatter->format(Diff)
#10 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(844): DifferenceEngine->textDiff(string, string)
#11 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(860): DifferenceEngine->{closure}()
#12 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(813): DifferenceEngine->generateTextDiffBody(string, string)
#13 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(743): DifferenceEngine->generateContentDiffBody(WikitextContent, WikitextContent)
#14 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(665): DifferenceEngine->getDiffBody()
#15 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(635): DifferenceEngine->getDiff(string, string, string)
#16 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/diff/DifferenceEngine.php(443): DifferenceEngine->showDiff(string, string, string)
#17 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Article.php(826): DifferenceEngine->showDiffPage(boolean)
#18 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Article.php(549): Article->showDiffPage()
#19 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/actions/ViewAction.php(44): Article->view()
#20 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Wiki.php(487): ViewAction->show()
#21 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Wiki.php(285): MediaWiki->performAction(Article, Title)
#22 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Wiki.php(647): MediaWiki->performRequest()
#23 /zstore/backups/cn10/home/ws10522/public_html/wiki/includes/Wiki.php(506): MediaWiki->main()
#24 /zstore/backups/cn10/home/ws10522/public_html/wiki/index.php(48): MediaWiki->run()
#25 {main}