This error might indicate a memory leak if setState() is being called because another object is reta
E/flutter ( 4976): The preferred solution is to cancel the timer or stop listening to the animation in the dispose() callback. Another solution is to check the “mounted” property of this object before calling setState() to ensure the object is still in the tree.
E/flutter ( 4976): This error might indicate a memory leak if setState() is being called because another object is retaining a reference to this State object after it has been removed from the tree. To avoid memory leaks, consider breaking the reference to this object during dispose().
해결 방법: setState를 호출하기 전에 mounted를 판단하면 된다
if (mounted) {
setState(() {
//....
})
}
mounted: 이 [state] 객체가 현재 트리에 있는지 여부입니다.[state] 객체를 만든 후 [initState]를 호출하기 전에 프레임은 [BuildContext]와 연결하여 [state] 객체를 로드합니다.프레임워크가 [dispose]를 호출하기 전에 [state] 대상은 마운트 상태를 유지하고 그 후에 프레임워크는 [state] 대상에게 다시 [build]를 요구하지 않습니다.[mount]가true가 아니면 [setState]를 호출하는 것이 잘못되었습니다.
디스포스 이후에 setState 대상을 호출할 수 없으면 메모리 유출을 초래할 수 있다는 뜻이다
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Flutter】DateTime 전월의 일수를 취득한다달의 일수를 취득할 필요가 있어, 의외로 수요 있을까라고 생각했으므로 비망록 정도에 남겨 둡니다. DateTime 날짜에 0을 입력하면 전월 DateTime이 됩니다. 2021년 3월 0일 = 2021년 2월 28일...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.