As @yawns points out its down to the individual modules to implement/subclass the suspend and resume methods which in turn can be used to control when background activity is performed.
This has been around since MM 2.0, so ModuleScheduler doesn’t make any attempt to control the functionality of the modules other than show, hide, dim and send notifications.