background sub thread running