only a single thread for sampling in-situ