6. Keluar dari sandbox

Bergantung pada cara Anda menjalankan sandbox (lihat langkah ini), Anda harus menyesuaikan cara menghentikan sandbox, dan juga dengan Sandboxee.

Keluar dari sandbox yang berjalan secara sinkron

Jika sandbox telah berjalan secara sinkron, Run hanya akan ditampilkan saat Sandboxee selesai. Oleh karena itu, penghentian ini tidak diperlukan langkah tambahan. Cuplikan kode di bawah ini menunjukkan skenario ini:

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

Keluar dari sandbox yang berjalan secara asinkron

Jika sandbox berjalan secara asinkron, ada dua opsi yang tersedia untuk dihentikan. Pertama, Anda cukup menunggu penyelesaian Sandboxee dan menerima status eksekusi akhir:

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

Atau, Anda dapat menghentikan Sandboxee kapan saja, tetapi sebaiknya tetap panggil AwaitResult() karena Sandboxee mungkin dihentikan karena alasan lain pada saat yang sama:

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