我正在使用Xamarin创建绘图应用。尽管如此,我的问题也是针对iOS开发人员的。
我的应用加载了巨大的图像(20k x 20k)。我使用CATiledLayer动态加载图片切片。多亏了这一点,变焦和scrool运行顺利。
但是,我需要实施有效的绘图机制。我的第一次尝试是将形状绘制为单独的UIView并将其添加到TiledView的子视图中。不幸的是,当我添加大约20/30个新形状然后应用程序崩溃(我猜它是内存问题)。
我需要找到更好的解决方案。我的形状需要是可编辑的,所以我需要识别已经在TiledView上绘制的每个形状的选择。
在这种情况下,什么可能是避免内存故障的最佳机制?
CRASH LOG:
ncident标识符:C9C8CCA2-C696-47E2-AA9D-A8C31FFBAF31 CrashReporter密钥:a67a03df60dd7720558ad435b234abe43d11b3f7 硬件型号:iPad5,4 操作系统版本:iPhone OS 8.1.3(12B466) 内核版本:Darwin内核版本14.0.0:1月12日星期一21:30:33太平洋标准时间2015;根:XNU-2783年3月26日〜3 / RELEASE_ARM64_T7001 日期:2015-09-10 17:03:33 +0200 快照时间:90毫秒
免费页面:1933年 活动页面:121405 非活动页面:60751 推测页面:80 限制页面:0 可清除的页面:2 有线页面:315568 文件支持的页面:58380 匿名页面:123856 压缩:1741284 减压:447152 压缩机尺寸:8767 Compressor中未压缩的页面:74266 页面大小:16384 最大的流程:MyAppMobileiOS
流程 名称| | CPU时间| rpages |可清除| recent_max | lifetime_max | fds | [原因] | (状态)
lockbot <53895193cd6633249ce169c478502497> 0.055 202 0 - 725 50 (daemon) (idle)
pfd <8ce9eb62121b30789b79e1f436991382> 0.015 142 0 - 292 50 (daemon) (idle)
cloudd <c52c2112d0273e96b8590473a61e7620> 6.121 690 0 - 2504 50 (daemon) (idle)
WirelessRadioMan <c4181e6d863133e8aa0c95e77a7bb206> 0.026 289 0 - 835 50 (daemon) (idle)
adid <4311d58b77b73fd4bf2c9e9e0bbe7102> 0.028 138 0 - 567 50 (daemon) (idle)
com.apple.Mobile <a1ced7e68eda30b1937b477edc680e47> 0.020 185 0 - 716 50 (daemon) (idle)
com.apple.Mobile <865e9aa3dce0392393a2445e115bc26f> 0.022 185 0 - 518 50 (daemon) (idle)
softwareupdated <fbc339ae37193ef1b1bd2a9d5e9bcbe4> 0.031 212 0 - 601 50 (daemon) (idle)
mobileassetd <2a22e27544cc3061a22b02482e465e18> 0.336 581 0 - 2101 50 (daemon) (idle)
misd <33855e3c639237059e7c9d7dda6aca90> 0.033 206 0 - 823 50 (daemon) (idle)
CallHistorySyncH <bc9285858ef43d54840605171b184fa2> 0.060 431 0 - 1252 50 (daemon) (idle)
IMDPersistenceAg <5fa1bcbbda9430798334affdb70def14> 0.030 277 0 - 930 50 (daemon) (idle)
timed <6fa98ab7f5de312b9bfed47e04e3a43e> 0.032 277 0 - 1031 50 (daemon) (idle)
AppleIDAuthAgent <32f4603750953460b1a7cb4969fd7cf5> 0.045 318 0 - 1743 50 (daemon) (idle)
keybagd <04b17e6606dd367885be8033ee6f077a> 0.015 161 0 - 381 50 (daemon) (idle)
biometrickitd <6298f82913613677b4b7207a26c585ec> 0.421 261 0 - 786 50 (daemon) (idle)
mediaremoted <baa09addc0ae3b55a72cfe7b2699a962> 0.033 318 0 - 1294 50 (daemon) (idle)
recentsd <c21dbb35d7a232298410e388a1752a23> 0.063 420 0 - 1455 50 (daemon) (idle)
softwareupdatese <4709ed9e2ad1314c8967b0ccefdd61eb> 0.258 977 0 - 1713 50 (daemon) (idle)
geod <0f816c02eb453d968c7bd1e4c1ecb994> 0.149 642 0 - 1539 50 (daemon) (idle)
MobileGestaltHel <7c83454f8c06366ebf04aea3bb88684b> 0.040 180 0 - 559 50 (daemon) (idle)
calaccessd <0a7ad7bbfb523bfdbae43aa6f21279f6> 0.191 631 0 - 1786 50 (daemon) (idle)
awdd <58036e1703903ee798a8803de204c300> 0.059 443 0 - 1216 50 (daemon) (idle)
lsuseractivityd <a9a6b77429543057b3e8dcf41f843882> 0.065 425 0 - 1977 50 (daemon) (idle)
com.apple.uifoun <87486c98c2873ab7a0a1a044a5a0cfd3> 0.029 275 0 - 939 50 (daemon) (idle)
DuetHeuristic-BM <e333cee8cc9e3dc282446623596bab84> 0.117 300 0 - 1117 50 (daemon) (idle)
healthd <9c827f1747f83866b20dcf4e398cc04d> 0.034 306 0 - 1035 50 (daemon) (idle)
com.apple.Stream <203112144ccc3e84acf77312bcf37070> 2.857 187 0 - 753 50 (daemon) (idle)
bird <646b4254a19a34caa4840f8001fd4420> 0.058 427 0 - 1779 50 (daemon) (idle)
assetsd <4f3af4038d6a31e8877838accafce687> 0.096 671 0 - 2159 50 (daemon) (idle)
findmydeviced <36e2b8af21133fb7a5a6271ab4d4f8de> 0.139 638 0 - 2122 50 (daemon) (idle)
nehelper <8837f4419593305c9831c00d25a97eaf> 0.869 258 0 - 822 50 (daemon) (idle)
assistantd <dff049e87a5932fabdffe16c4714f9a7> 0.071 544 0 - 2332 50 (daemon) (idle)
profiled <7b81e857b6ef3a7587f5d82f33801dcb> 1.409 596 0 - 2416 50 (daemon) (idle)
pkd <caa0944ef38235e7ac99199add47d66d> 0.038 289 0 - 707 50 (daemon) (idle)
accountsd <75b3925e9bec337abda4f51e69fc8aa3> 8.768 712 0 - 1816 50 (daemon) (idle)
mobactivationd <73043288866c3d4ca5eac0125c844edf> 0.084 244 0 - 858 50 (daemon) (idle)
misagent <ddb04cb78e2537a088fbe6c299c0ed8e> 0.046 177 0 - 418 50 (daemon) (idle)
mobile_installat <edbce91b2e3c348f8f4ad95fb6b1ad46> 0.447 289 0 - 1015 50 (daemon) (idle)
streaming_zip_co <60920fc5a7c335beb44817afc5fe72c3> 3.391 281 0 - 1111 50 (daemon) (idle)
coreduetd <aef9d0f50b733e809cad3a94e579e421> 82.665 1127 0 - 2401 50 (daemon) (idle)
sandboxd <bd8f8b9f25243f9986b3ce97fee405cc> 0.374 196 0 - 732 50 (daemon) (idle)
installd <99b95276bb41375fa847581e6fbe6374> 0.707 359 0 - 1339 50 (daemon) (idle)
swcd <05434abfd6103a369f3321d5bd15c96e> 0.011 194 0 - 533 50 (daemon) (idle)
containermanager <7036996ffbed3c0e9b50d8868efe28e0> 0.214 248 0 - 702 50 (daemon) (idle)
securityd <90eafc65815f356fab632f1752d53b24> 22.648 661 0 - 1707 50 (daemon) (idle)
gamecontrollerd <f41fdd3b557336b6b146bb00a33eab9f> 0.028 287 0 - 1200 50 (daemon) (idle)
aosnotifyd <8928d77645f134aa9150588fe1c143cf> 0.131 581 0 - 2008 50 (daemon) (idle)
syncdefaultsd <6f6a68c431cc37238c9e618de999477c> 0.065 421 0 - 1260 50 (daemon) (idle)
nsurlstoraged <85de3fa57a65304a959e6c2956042080> 1.553 451 0 - 1471 50 (daemon) (idle)
coresymbolicatio <09a629143bfc3a7d9228b414bb958ae9> 0.015 132 0 - 727 50 (daemon) (idle)
diagnosticd <274578acfd6d358a95c961c0bab148a9> 0.012 148 0 - 269 50 (daemon) (idle)
seld <c955a19f0fbd33118c611afe19061379> 3.394 303 0 - 1156 50 (daemon)
nsurlsessiond <ab90763d8a453fc68012fabc4b4f55fb> 2952.876 624 0 - 2134 50 (daemon)
nfcd <edf2425212b632dbb5ef155ee1600bbb> 2.724 255 0 - 680 50 (daemon)
passd <56971afa88b53f05a37688cad47b4160> 157.996 810 0 - 2715 50 (daemon)
afcd <4c7ac1d53ab73eada82020285315196f> 0.038 177 0 - 402 50 (daemon)
notification_pro <b143453e80393938a7ba23a0181dc52c> 2.654 215 0 - 625 50 (daemon)
MobileMail <4b48abd990e93dbea47db1cbf328da9e> 0.317 1302 0 - 3650 50 (resume) (continuous)
lsd <f554bd07b90a3cfc9d9ef9f8e234833c> 36.562 474 0 - 1401 50 (daemon)
tccd <f2878273872231afa1a6e0af2dcb73a6> 2.322 310 0 - 1084 50 (daemon)
kbd <f66b6a1e58b93ad9a2c5bd2e1b278a89> 3.316 895 0 - 3607 50 (daemon)
MyAppMobileiOS <3f455836ca6a322eac86d527e1523ab1> 14.932 307041 0 - 139221 50 [per-process-limit] (frontmost) (resume)
ptpd <a06176d3eefe3e3c8549bb4f6d340658> 2.108 774 0 - 2011 50 (daemon)
BTServer <fb2cd87aeac73d17bf13c86301b5b484> 66.048 631 0 - 2001 50 (daemon)
wifid <dd76567ec94c37d9b1c94cd96424b2a9> 1099.027 1335 0 - 2267 50 (daemon)
lockdownd <6e013570f34d36daa8738867f8421001> 162.384 436 0 - 2710 50 (daemon)
discoveryd <68f73878299336d7872b0ae9ce3f7f08> 2956.940 935 0 - 2164 100 (daemon)
imagent <432c43382eeb3724894a973cd6f5a399> 50.719 711 0 - 1777 50 (daemon)
identityservices <9d4b00e3c6003685ac8697c59f4e4d38> 149.813 954 0 - 2601 50 (daemon)
mediaserverd <a0354e528bc431958df0d50830bead36> 33.273 1696 0 - 4212 50 (daemon)
cfprefsd <4325eab208063b998046460a4c2ee484> 98.702 537 0 - 2497 50 (daemon)
syslogd <05f6b5e5512938a892bac5af23ab1c08> 1605.858 320 0 - 2162 50 (daemon)
iaptransportd <c10fd2029e2e315d92873b74a92c6e9c> 181.800 354 0 - 983 50 (daemon)
powerd <2b4ae8758a5b3b709a97c452ec08923b> 286.535 406 0 - 727 50 (daemon)
apsd <bb925404cb1137b09b85671a8d2c7656> 312.283 1037 0 - 4497 50 (daemon)
networkd <ad1db85ed3c53c6fadbd858f9a88dd20> 237.182 778 0 - 5847 50 (daemon)
dataaccessd <33bcaea3bc473f128685f4df14a115eb> 13.681 960 0 - 2823 50 (daemon)
sharingd <233b174d5619396cb3af72c7d7e51985> 12.777 885 0 - 2694 50 (daemon)
searchd <eff930e81e4d38f796034db851dad1fe> 757.973 1193 0 - 5590 50 (daemon)
locationd <a57577b0423133a0b17579011ef1c65f> 2051.091 3549 0 - 5035 50 (daemon)
SpringBoard <d9487116f8c239d2b5fb32c12168cac1> 10.514 6275 0 - 25629 50
backboardd <45eb8ac74abd31b386cb3b7ba27618ea> 54.692 97037 0 - 131444 50 (daemon)
fseventsd <16c9b62bb28c388ca10d54dbff18c4f8> 143.831 979 0 - 2080 50 (daemon)
configd <ed40fcde35ae337ab3b70073199564b1> 117.409 1478 0 - 1865 50 (daemon)
fairplayd.A2 <6ca40f79d0ad34d5b4df0a80fce4bc5d> 3.232 176 0 - 1325 50 (daemon)
wirelessproxd <ab1fa7e43a7c3f9393533404c2cc80b8> 2.607 299 0 - 1082 50 (daemon)
assertiond <10ec04add18f3ecd8a8efbb1cc4e2bd6> 52.340 366 0 - 2071 50 (daemon)
distnoted <cb5e76091dc53ceeaf65290f8e197a89> 7.723 244 0 - 500 50 (daemon)
discoveryd_helpe <492c39ae2d643adca0ed971675c77406> 0.151 187 0 - 796 50 (daemon)
filecoordination <519743feb6cb36ff871945656d950d8b> 0.314 298 0 - 1027 50 (daemon)
aggregated <281958649a3130aab6ecb1aa47f0a6c1> 4.644 1092 0 - 2275 50 (daemon)
UserEventAgent <f5a211b9c88e3fa481f2bd1ee1f5a921> 2.033 886 0 - 2815 100 (daemon)
CommCenter <33412ab229c738c8860c70803fed173b> 1329.544 3270 0 - 6434 50 (daemon)
notifyd <5fa8fd5e44c83f64be1475b882b16c82> 1302.113 520 0 - 615 50 (daemon)
ReportCrash <698156bee7ff37c0ab9fd8fe15a6ee32> 0.080 395 0 - 829 50 (daemon)
结束