Dart is a single threaded language, but it comes with a handy compute function to spawn isolates. In a nutshell, the compute function is useful for doing extra work on a different "thread"--it's actually an isolate--so your flutter app does not experience "jank".
Creating a scrollable linear array of widgets that are created on demand is easy with Flutter. While laying out the list, visible children's elements, states and render objects will be created lazily based on the widget's position