6. सैंडबॉक्स से बाहर निकलना

सैंडबॉक्स चलाने के तरीके के आधार पर (यह चरण देखें), आपको सैंडबॉक्स को खत्म करने के तरीके में बदलाव करना होगा. इस तरह सैंडबॉक्स को भी खत्म किया जा सकता है.

सिंक्रोनस रूप से चल रहे सैंडबॉक्स से बाहर निकलना

अगर सैंडबॉक्स को साथ में चलाया जा रहा है, तो सैंडबॉक्सी के खत्म होने पर ही रन चलेगा. इसलिए, खाता बंद करने के लिए आपको कोई और चरण देने की ज़रूरत नहीं है. नीचे दिया गया कोड स्निपेट यह स्थिति दिखाता है:

Sandbox2::Result result = s2.Run();
LOG(INFO) << "Final execution status: " << result.ToString();

एसिंक्रोनस रूप से चल रहे किसी सैंडबॉक्स से बाहर निकलना

अगर सैंडबॉक्स एसिंक्रोनस रूप से चल रहा है, तो बंद करने के दो विकल्प उपलब्ध हैं. सबसे पहले, आपको सैंडबॉक्सी के पूरा होने तक इंतज़ार करना होगा और उसके बाद आपको एक्ज़ीक्यूशन की आखिरी स्थिति मिल जाएगी:

sandbox2::Result result = s2.AwaitResult();
LOG(INFO) << "Final execution status: " << result.ToString();

इसके अलावा, आपके पास सैंडबॉक्सी को किसी भी समय बंद करने का विकल्प है. हालांकि, हमारा सुझाव है कि आप AwaitResult() को कॉल करें, क्योंकि इस बीच किसी अन्य वजह से सैंडबॉक्सी बंद हो सकती है:

s2.Kill();
sandbox2::Result result = s2.AwaitResult();
LOG(INFO) << "Final execution status: " << result.ToString();