My game run crash in samsung note3, but run well in other android device.
logs—
07-27 11:06:17.184: I/DEBUG(296): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x37
07-27 11:06:17.244: I/DEBUG(296): Abort message: ‘art/runtime/indirect_reference_table.cc:76] Check failed: table_mem_map_.get() != nullptr ashmem_create_region failed for ‘indirect ref table’: Too many open files’
07-27 11:06:17.244: I/DEBUG(296): r0 fffffaa4 r1 00000000 r2 be829f00 r3 e16b0875
07-27 11:06:17.244: I/DEBUG(296): r4 ffffffff r5 b6fbfe04 r6 6cc5fa98 r7 b4e30be1
07-27 11:06:17.244: I/DEBUG(296): r8 a08487e0 r9 00000000 sl fffffae4 fp b4ff2000
07-27 11:06:17.244: I/DEBUG(296): ip a08487e4 sp 6cc5f930 lr b4e30b85 pc b4df0e3c cpsr a0070030
07-27 11:06:17.244: I/DEBUG(296): backtrace:
07-27 11:06:17.244: I/DEBUG(296): #00 pc 001eae3c /system/lib/libart.so (art::Monitor::VisitLocks(art::StackVisitor*, void ()(art:
:Object, void*), void*, bool)+43)
07-27 11:06:17.244: I/DEBUG(296): #01 pc 0022ab81 /system/lib/libart.so (art::StackDumpVisitor::VisitFrame()+348)
07-27 11:06:17.244: I/DEBUG(296): #02 pc 002251fb /system/lib/libart.so (art::StackVisitor::WalkStack(bool)+250)
07-27 11:06:17.244: I/DEBUG(296): #03 pc 0022d15b /system/lib/libart.so (art:![]()
ump(std::__1::basic_ostream<char, std::__1::char_traits >&) const+210)
07-27 11:06:17.244: I/DEBUG(296): #04 pc 00235a99 /system/lib/libart.so (art::ThreadList:
umpLocked(std::__1::basic_ostream<char, std::__1::char_traits >&)+104)
07-27 11:06:17.244: I/DEBUG(296): #05 pc 0021d9a1 /system/lib/libart.so (art::AbortState:
ump(std::__1::basic_ostream<char, std::__1::char_traits >&)+236)
07-27 11:06:17.244: I/DEBUG(296): #06 pc 0021dbed /system/lib/libart.so (art::Runtime::Abort()+72)
07-27 11:06:17.244: I/DEBUG(296): #07 pc 000a7cf3 /system/lib/libart.so (art::LogMessage::~LogMessage()+1322)
07-27 11:06:17.244: I/DEBUG(296): #08 pc 0015827b /system/lib/libart.so (art::IndirectReferenceTable::IndirectReferenceTable(unsigned int, unsigned int, art::IndirectRefKind)+638)
07-27 11:06:17.244: I/DEBUG(296): #09 pc 001956cd /system/lib/libart.so (art::JNIEnvExt::JNIEnvExt(art::Thread*, art::JavaVMExt*)+24)
07-27 11:06:17.244: I/DEBUG(296): #10 pc 0022c05b /system/lib/libart.so (art:
:Init(art::ThreadList*, art::JavaVMExt*)+338)
07-27 11:06:17.244: I/DEBUG(296): #11 pc 0022f951 /system/lib/libart.so (art:
:CreateCallback(void*)+84)
07-27 11:06:17.244: I/DEBUG(296): #12 pc 000137bb /system/lib/libc.so (__pthread_start(void*)+30)
07-27 11:06:17.244: I/DEBUG(296): #13 pc 0001189b /system/lib/libc.so (__start_thread+6)
i test my game step by step, now i find the problew seem like WWW
i just test in the code , and crash in same logs
int count = 0;
IEnumerator Test()
{
for(int i=0; i<2000; i++)
{
WWW www = new WWW(path);
yield return www;
count++;
www.Dispose();
www = null;
Resources.UnloadUnusedAssets();
System.GC.Collect();
}
}
and when the “count” is about 960 , my game will crash