I'm*_*il3 7 out-of-memory dart flutter
我正在 Flutter 中开发一个应用程序,我正在使用 preloadpageview 和缓存的视频播放器插件通过我的数据库中的 url 播放视频,在播放 15 到 20 个视频后,我的应用程序正在关闭并且 logcat 提示这样的错误。我正在 initstate 中初始化视频并处理视频小部件。
视频小部件代码:
@override
void initState() {
super.initState();
controller = CachedVideoPlayerController.network(mediaUrl);
_initializeVideoPlayerFuture = controller.initialize();
controller.setLooping(true);
}
buildvideopreview(){
return FutureBuilder(
future: _initializeVideoPlayerFuture,
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return Stack(fit: StackFit.expand,
children: <Widget>[
AspectRatio(
aspectRatio: controller.value.aspectRatio,
child: VisibilityDetector(
key: Key(postId),
onVisibilityChanged: (VisibilityInfo info){
print("${info.visibleFraction} of my widget is visible");
if(info.visibleFraction == 1 && controller != null){
print('===========playing');
controller.play();
}
else{
print('============pause');
controller.pause();
}
},
child: CachedVideoPlayer(controller),
)
),
Center(
child: showheart
? Image(
image: AssetImage('assets/gifs/heart.gif')
)
: SizedBox()
),
Center(
child: ispaused
? Image(
width: 100,
height: 100,
image: AssetImage('assets/images/pause.png')
)
: SizedBox()
)
],
);
} else {
return Center(
child: Container(
width: 100,
height: 100,
child:
// circularProgress(),
Image(
image: AssetImage('assets/gifs/loadermain.gif')
),
),
);
}
},
);
}
@override
void dispose() {
super.dispose();
postcontroller.dispose();
}
Run Code Online (Sandbox Code Playgroud)
主页(预加载浏览量):
PreloadPageView.builder(
scrollDirection: Axis.vertical,
controller: postscontroller,
preloadPagesCount: 5,
itemCount: posts.length,
physics: AlwaysScrollableScrollPhysics(),
itemBuilder: (BuildContext context, int index) {
Post post = posts[index];
return post;
});
Run Code Online (Sandbox Code Playgroud)
错误:
Throwing OutOfMemoryError "Failed to allocate a 336 byte allocation with 0 free bytes and 0B until OOM, target footprint 402654152, growth limit 402653184" (VmSize 9519664 kB)
on HeapTrim for 838.787ms
I/.imsunil.peopl(31137): Starting a blocking GC Alloc
I/.imsunil.peopl(31137): Clamp target GC heap from 400MB to 384MB
I/.imsunil.peopl(31137): Alloc concurrent copying GC freed 0(0B) AllocSpace objects, 0(0B) LOS objects, 0% free, 384MB/384MB, paused 65us total 39.915ms
I/.imsunil.peopl(31137): Forcing collection of SoftReferences for 64KB allocation
I/.imsunil.peopl(31137): Starting a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Clamp target GC heap from 400MB to 384MB
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
I/.imsunil.peopl(31137): Waiting for a blocking GC Alloc
utm=184 stm=54 core=6 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x7106961000-0x7106963000 stackSize=1023KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31144/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 000000000008014c /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 000000000014b1f4 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
F/.imsunil.peopl(31137): runtime.cc:630] native: #02 pc 00000000005146c0 /apex/com.android.runtime/lib64/libart.so (art::ThreadPool::GetTask(art::Thread*)+256)
F/.imsunil.peopl(31137): runtime.cc:630] native: #03 pc 0000000000513a4c /apex/com.android.runtime/lib64/libart.so (art::ThreadPoolWorker::Run()+144)
F/.imsunil.peopl(31137): runtime.cc:630] native: #04 pc 000000000051350c /apex/com.android.runtime/lib64/libart.so (art::ThreadPoolWorker::Callback(void*)+148)
F/.imsunil.peopl(31137): runtime.cc:630] native: #05 pc 00000000000e8930 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
F/.imsunil.peopl(31137): runtime.cc:630] native: #06 pc 0000000000085094 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
F/.imsunil.peopl(31137): runtime.cc:630] (no managed stack frames)
F/.imsunil.peopl(31137): runtime.cc:630]
F/.imsunil.peopl(31137): runtime.cc:630] "Signal Catcher" prio=10 tid=5 WaitingInMainSignalCatcherLoop
F/.imsunil.peopl(31137): runtime.cc:630] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00078 self=0x71976f7000
F/.imsunil.peopl(31137): runtime.cc:630] | sysTid=31149 nice=0 cgrp=default sched=0/0 handle=0x710595ad50
F/.imsunil.peopl(31137): runtime.cc:630] | state=S schedstat=( 978958 6594323 7 ) utm=0 stm=0 core=5 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x7105864000-0x7105866000 stackSize=991KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31149/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 00000000000d3268 /apex/com.android.runtime/lib64/bionic/libc.so (__rt_sigtimedwait+8)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 0000000000090148 /apex/com.android.runtime/lib64/bionic/libc.so (sigwait+68)
F/.imsunil.peopl(31137): runtime.cc:630] native: #02 pc 00000000004da1d0 /apex/com.android.runtime/lib64/libart.so (art::SignalCatcher::WaitForSignal(art::Thread*, art::SignalSet&)+392)
F/.imsunil.peopl(31137): runtime.cc:630] native: #03 pc 00000000004d8f50 /apex/com.android.runtime/lib64/libart.so (art::SignalCatcher::Run(void*)+268)
F/.imsunil.peopl(31137): runtime.cc:630] native: #04 pc 00000000000e8930 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
F/.imsunil.peopl(31137): runtime.cc:630] native: #05 pc 0000000000085094 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
F/.imsunil.peopl(31137): runtime.cc:630] (no managed stack frames)
F/.imsunil.peopl(31137): runtime.cc:630]
F/.imsunil.peopl(31137): runtime.cc:630] "ADB-JDWP Connection Control Thread" prio=10 tid=8 WaitingInMainDebuggerLoop
F/.imsunil.peopl(31137): runtime.cc:630] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c000f0 self=0x710526c800
F/.imsunil.peopl(31137): runtime.cc:630] | sysTid=31150 nice=0 cgrp=default sched=0/0 handle=0x710585dd50
F/.imsunil.peopl(31137): runtime.cc:630] | state=S schedstat=( 6899537 3956038 15 ) utm=0 stm=0 core=1 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x7105767000-0x7105769000 stackSize=991KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31150/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 00000000000d3168 /apex/com.android.runtime/lib64/bionic/libc.so (__ppoll+8)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 000000000008dbec /apex/com.android.runtime/lib64/bionic/libc.so (poll+88)
F/.imsunil.peopl(31137): runtime.cc:630] native: #02 pc 0000000000008e24 /apex/com.android.runtime/lib64/libadbconnection.so (adbconnection::AdbConnectionState::RunPollLoop(art::Thread*)+824)
F/.imsunil.peopl(31137): runtime.cc:630] native: #03 pc 000000000000721c /apex/com.android.runtime/lib64/libadbconnection.so (adbconnection::CallbackFunction(void*)+1076)
F/.imsunil.peopl(31137): runtime.cc:630] native: #04 pc 00000000000e8930 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
F/.imsunil.peopl(31137): runtime.cc:630] native: #05 pc 0000000000085094 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
F/.imsunil.peopl(31137): runtime.cc:630] (no managed stack frames)
F/.imsunil.peopl(31137): runtime.cc:630]
F/.imsunil.peopl(31137): runtime.cc:630] "ReferenceQueueDaemon" prio=10 tid=9 Waiting
F/.imsunil.peopl(31137): runtime.cc:630] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00168 self=0x7100bec000
F/.imsunil.peopl(31137): runtime.cc:630] | sysTid=31152 nice=4 cgrp=default sched=0/0 handle=0x70a8d95d50
F/.imsunil.peopl(31137): runtime.cc:630] | state=S schedstat=( 45776091 76168070 359 ) utm=2 stm=2 core=6 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x70a8c93000-0x70a8c95000 stackSize=1039KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31152/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 000000000008014c /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 000000000014b1f4 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
F/.imsunil.peopl(31137): runtime.cc:630] native: #02 pc 000000000040c0e4 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, long, int, bool, art::ThreadState)+620)
F/.imsunil.peopl(31137): runtime.cc:630] native: #03 pc 000000000040db44 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtr<art::mirror::Object>, long, int, bool, art::ThreadState)+284)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Object.wait(Native method)
F/.imsunil.peopl(31137): runtime.cc:630] - waiting on <0x077da922> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Object.wait(Object.java:442)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Object.wait(Object.java:568)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:220)
F/.imsunil.peopl(31137): runtime.cc:630] - locked <0x077da922> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Daemons$Daemon.run(Daemons.java:142)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Thread.run(Thread.java:919)
F/.imsunil.peopl(31137): runtime.cc:630]
F/.imsunil.peopl(31137): runtime.cc:630] "FinalizerDaemon" prio=10 tid=10 WaitingForGcToComplete
F/.imsunil.peopl(31137): runtime.cc:630] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c001e0 self=0x7100bedc00
F/.imsunil.peopl(31137): runtime.cc:630] | sysTid=31153 nice=4 cgrp=default sched=0/0 handle=0x70a8c8cd50
F/.imsunil.peopl(31137): runtime.cc:630] | state=S schedstat=( 197406407 93751169 663 ) utm=15 stm=4 core=7 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x70a8b8a000-0x70a8b8c000 stackSize=1039KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31153/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 000000000008014c /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 000000000014b1f4 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
F/.imsunil.peopl(31137): runtime.cc:630] native: #02 pc 0000000000243ecc /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::WaitForGcToCompleteLocked(art::gc::GcCause, art::Thread*)+444)
F/.imsunil.peopl(31137): runtime.cc:630] native: #03 pc 0000000000248fdc /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::CollectGarbageInternal(art::gc::collector::GcType, art::gc::GcCause, bool)+836)
F/.imsunil.peopl(31137): runtime.cc:630] native: #04 pc 000000000024d1d8 /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::AllocateInternalWithGc(art::Thread*, art::gc::AllocatorType, bool, unsigned long, unsigned long*, unsigned long*, unsigned long*, art::ObjPtr<art::mirror::Class>*)+1196)
F/.imsunil.peopl(31137): runtime.cc:630] native: #05 pc 0000000000580ed4 /apex/com.android.runtime/lib64/libart.so (artAllocObjectFromCodeInitializedRegionTLAB+376)
F/.imsunil.peopl(31137): runtime.cc:630] native: #06 pc 000000000013e078 /apex/com.android.runtime/lib64/libart.so (art_quick_alloc_object_initialized_region_tlab+104)
F/.imsunil.peopl(31137): runtime.cc:630] native: #07 pc 00000000020b5650 /memfd:/jit-cache (deleted) (com.android.internal.os.BinderInternal$GcWatcher.finalize+368)
F/.imsunil.peopl(31137): runtime.cc:630] native: #08 pc 0000000000136334 /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
F/.imsunil.peopl(31137): runtime.cc:630] native: #09 pc 0000000000144fec /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244)
F/.imsunil.peopl(31137): runtime.cc:630] native: #10 pc 00000000002e2674 /apex/com.android.runtime/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+384)
F/.imsunil.peopl(31137): runtime.cc:630] native: #11 pc 00000000002dd8d4 /apex/com.android.runtime/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+892)
F/.imsunil.peopl(31137): runtime.cc:630] native: #12 pc 000000000059ff90 /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtual+648)
F/.imsunil.peopl(31137): runtime.cc:630] native: #13 pc 0000000000130814 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual+20)
F/.imsunil.peopl(31137): runtime.cc:630] native: #14 pc 00000000001b3bc2 /apex/com.android.runtime/javalib/core-libart.jar (java.lang.Daemons$FinalizerDaemon.doFinalize+22)
F/.imsunil.peopl(31137): runtime.cc:630] native: #15 pc 00000000005a255c /apex/com.android.runtime/lib64/libart.so (MterpInvokeDirect+1100)
F/.imsunil.peopl(31137): runtime.cc:630] native: #16 pc 0000000000130914 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_direct+20)
F/.imsunil.peopl(31137): runtime.cc:630] native: #17 pc 00000000001b3cb4 /apex/com.android.runtime/javalib/core-libart.jar (java.lang.Daemons$FinalizerDaemon.runInternal+164)
F/.imsunil.peopl(31137): runtime.cc:630] native: #18 pc 00000000005a0250 /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtual+1352)
F/.imsunil.peopl(31137): runtime.cc:630] native: #19 pc 0000000000130814 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual+20)
F/.imsunil.peopl(31137): runtime.cc:630] native: #20 pc 00000000001b39b6 /apex/com.android.runtime/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+50)
F/.imsunil.peopl(31137): runtime.cc:630] native: #21 pc 00000000005a1a70 /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1788)
F/.imsunil.peopl(31137): runtime.cc:630] native: #22 pc 0000000000130a14 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20)
F/.imsunil.peopl(31137): runtime.cc:630] native: #23 pc 00000000000ea9a0 /apex/com.android.runtime/javalib/core-oj.jar (java.lang.Thread.run+8)
F/.imsunil.peopl(31137): runtime.cc:630] native: #24 pc 00000000002b3988 /apex/com.android.runtime/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.16775679700042528677+240)
F/.imsunil.peopl(31137): runtime.cc:630] native: #25 pc 00000000005914f8 /apex/com.android.runtime/lib64/libart.so (artQuickToInterpreterBridge+1032)
F/.imsunil.peopl(31137): runtime.cc:630] native: #26 pc 000000000013f468 /apex/com.android.runtime/lib64/libart.so (art_quick_to_interpreter_bridge+88)
F/.imsunil.peopl(31137): runtime.cc:630] native: #27 pc 0000000000136334 /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
F/.imsunil.peopl(31137): runtime.cc:630] native: #28 pc 0000000000144fec /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244)
F/.imsunil.peopl(31137): runtime.cc:630] native: #29 pc 00000000004afefc /apex/com.android.runtime/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
F/.imsunil.peopl(31137): runtime.cc:630] native: #30 pc 00000000004b1010 /apex/com.android.runtime/lib64/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+416)
F/.imsunil.peopl(31137): runtime.cc:630] native: #31 pc 00000000004f19cc /apex/com.android.runtime/lib64/libart.so (art::Thread::CreateCallback(void*)+1176)
F/.imsunil.peopl(31137): runtime.cc:630] native: #32 pc 00000000000e8930 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
F/.imsunil.peopl(31137): runtime.cc:630] native: #33 pc 0000000000085094 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
F/.imsunil.peopl(31137): runtime.cc:630] at com.android.internal.os.BinderInternal$GcWatcher.finalize(BinderInternal.java:63)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:294)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:281)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Daemons$Daemon.run(Daemons.java:142)
F/.imsunil.peopl(31137): runtime.cc:630] at java.lang.Thread.run(Thread.java:919)
F/.imsunil.peopl(31137): runtime.cc:630]
F/.imsunil.peopl(31137): runtime.cc:630] "FinalizerWatchdogDaemon" prio=10 tid=11 Sleeping
F/.imsunil.peopl(31137): runtime.cc:630] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00288 self=0x7100bef800
F/.imsunil.peopl(31137): runtime.cc:630] | sysTid=31154 nice=4 cgrp=default sched=0/0 handle=0x70a8b83d50
F/.imsunil.peopl(31137): runtime.cc:630] | state=S schedstat=( 1896305 12050676 28 ) utm=0 stm=0 core=6 HZ=100
F/.imsunil.peopl(31137): runtime.cc:630] | stack=0x70a8a81000-0x70a8a83000 stackSize=1039KB
F/.imsunil.peopl(31137): runtime.cc:630] | held mutexes=
F/.imsunil.peopl(31137): runtime.cc:630] kernel: (couldn't read /proc/self/task/31154/stack)
F/.imsunil.peopl(31137): runtime.cc:630] native: #00 pc 0000000000080150 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+32)
F/.imsunil.peopl(31137): runtime.cc:630] native: #01 pc 000000000014b62c /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int)+168)
F/.imsunil.peopl(31137): runtime.cc:630] native: #
当您看到异常时,您会发现您的应用程序正在消耗设备的大量 RAM。
您需要管理 flutter 应用程序中的内存泄漏。
Android 和 iOS 操作系统为每个应用程序分配有限的 RAM,以便同时管理所有进程。
如果任何应用程序使用的 RAM 多于其分配的内存,操作系统将停止该应用程序的所有进程。我们认为这是一次崩溃。
就您而言,您正在应用程序中播放多个视频,并且所有视频都是捕获的视频。当它们被捕获的视频时,它们会暂时保存在 RAM 中,并且当您看到越来越多的视频时,您正在使用越来越多的 RAM。
您需要优化您的应用程序,您可以在页面更改后清除视频。
这样,您就可以控制内存泄漏。
| 归档时间: |
|
| 查看次数: |
2577 次 |
| 最近记录: |