[Futures] Added markCompletedIfNeeded API (#39080)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/39080
This PR adds a function similar to setErrorIfNeeded for marking
futures complete. It only completes futures if they haven't been completed
already.
ghstack-source-id: 105038825
Test Plan: Sandcastle/CI
Differential Revision: D21746065
fbshipit-source-id: a7791a070f19e1f56aa5c2822edc4b60d8227c2c