Flutter

Memory & Performance

Memory leaks, dispose, DevTools profiler, widget rebuilds, const constructors, keys

22 面接問題·
Senior
1

Which method must be called in dispose() to avoid a memory leak with an AnimationController?

回答

The AnimationController's dispose() method releases resources associated with the animation controller, including listeners and internal timers. Without this call, the controller continues running in the background even after the widget is destroyed, causing a memory leak and potentially errors if the controller attempts to update a removed widget.

2

Which Flutter DevTools tool allows identifying memory leaks?

回答

The Memory Profiler in Flutter DevTools provides a detailed view of the application's memory usage. It allows capturing heap snapshots, analyzing objects in memory, detecting instances not collected by the garbage collector, and identifying references preventing memory from being freed.

3

How to reduce unnecessary widget rebuilds in Flutter?

回答

Using const before widget constructors allows the framework to reuse the same instance rather than creating a new one on each build. This prevents unnecessary rebuilds because Flutter recognizes the widget hasn't changed. Const widgets are created at compile time and kept in memory for reuse.

4

What is the main cause of a memory leak with a StreamController?

5

Which type of Key should be used to optimize ListView performance with reorderable items?

+19 面接問題

次の面接に向けてFlutterをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める